php kontaktformular funktioniert nicht
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
absenden
absender
adresse
ambrosia
code
datum
fax
fehler
firma
formular
funktion
funktionieren
hausnummer
http
kopie
mitteilung
ort
telefon
url
vorname
-
Hi zusammen,
ich habe eben ein Kontaktformular hochgeladen, dieses ist auch zu 100 % funktionsfähig.
Wenn ich es über lima ausführe, bekomme ich keine benachrichtigung.
Komisch ist allerdings, wenn ich es mir vom filemanager nochmal runterlade,
fehlt das komplette script, es geht erst wieder mit dem html teil los.
Hat jemand eine Lösung.
Viele Grüße -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
So wird dir sicherlich niemand helfen können ...lade doch mal das Kontaktformular auf deinen Webspace mit der Endung .txt
Dann kann man sich den Quelltext ansehen und bestimmt auch eine Lösung finden.
Grüßle -
Hi,
falls du ein Kontaktformular mit der PHP Funktion mail() benutzt, solltest du überprüfen, ob mail() auch aktiviert ist. Auf vielen Freehostern ist das nähmlich nicht der Fall (hier weiß ich es jetzt aber gerade nicht auswendig).
Yazurah -
Also ... lass dir sagen, das du die Eingegebenen Daten überhaupt nicht verarbeitest ^^
Probiere es dann nochmal ;)
Beitrag geändert: 8.1.2009 16:31:11 von nilswerner -
Hi,
die mail()-Funktion ist, wie in der Hilfe (http://www.lima-city.de/2008/php/#mail) beschrieben, angeblich aktiviert.
Allerdings funktioniert sie bei mir auch schon seit einiger Zeit nicht mehr.
Gruß
Karlja -
karlja schrieb:
Hi,
die mail()-Funktion ist, wie in der Hilfe (http://www.lima-city.de/2008/php/#mail) beschrieben, angeblich aktiviert.
Allerdings funktioniert sie bei mir auch schon seit einiger Zeit nicht mehr.
Gruß
Karlja
Die interessiert doch ersteinmal gar nicht...
als allerstes musst du doch irgendwie die eingegebenen werte/daten mit php verarbeiten...
Dein Script kann mit sowas allein nix anfangen:
Name: $name
was sollte das auch sein?
Es ist nur eine Undefinierte Variable..
Du musst dieser Variablen erst deinen Wert zuweisen..
z.B. so:
$name = $_POST['name'];
nun kann php damit weiter arbeiten -
Wie nilswerner gesagt hat. Das $name als post geht nur, wenn register_globals angeschaltet ist. Kannst du aber einstellen, ist jedoch nicht zu empfehlen ( Dieses Feature ist DEPRECATED (veraltet) und wird in PHP 6.0.0 ENTFERNT. Sich auf dieses Feature zu verlassen ist in keiner Weise empfehlenswert. Quelle: php.net)
Du musst also empfangene Daten erstmal den Variablen zuweisen:
<?php $name = $_POST['name']; // Falls Daten per Post übergeben werden $name = $_GET['name']; // Falls Daten per Get übergeben werden $name = $_COOKIE['name']; // Falls Daten per Cookie übergeben werden $name = $_REQUEST['name']; // Falls Daten per Post,Get oder Cookie übergeben werden, aber nicht zu empfehlen ?>
Gruß, Prog -
@prog und nilswerner
Auf lima ist register_globals aber standardmäßig an, weswegen es eigentlich funktionieren sollte. -
nilswerner schrieb:
karlja schrieb:
Hi,
die mail()-Funktion ist, wie in der Hilfe (http://www.lima-city.de/2008/php/#mail) beschrieben, angeblich aktiviert.
Allerdings funktioniert sie bei mir auch schon seit einiger Zeit nicht mehr.
Gruß
Karlja
Die interessiert doch ersteinmal gar nicht...
als allerstes musst du doch irgendwie die eingegebenen werte/daten mit php verarbeiten...
Da keine Benachrichtigung ankommt und zumindest der nicht variable Text ja verschickt werden müsste, scheint mit der mail-Funktion oder seiner Einbindung etwas nicht in Ordnung zu sein. -
tct schrieb:
Es sollte schon funktionieren, aber für eine Variante sollte er sich entscheiden ^^ er hat nämlich keine ^^
@prog und nilswerner
Auf lima ist register_globals aber standardmäßig an, weswegen es eigentlich funktionieren sollte.
karlja
Da keine Benachrichtigung ankommt und zumindest der nicht variable Text ja verschickt werden müsste, scheint mit der mail-Funktion oder seiner Einbindung etwas nicht in Ordnung zu sein.
Wie sollte denn auch irgendwas versand werden?
if ($ErrorMsg == "" and $send){ mail("$webmaster","$betreffwebmaster","$koerperwebmaster\n","FROM: $absender\n"); /*Soll der Absender eine Kopie erhalten?*/ if ($kopie == "ja"){ mail("$mail","$betreffabsender","$koerperabsender","FROM: $absender\n"); } $gesendet = "1"; }
Du benutzt immer die variable $send aber was soll damit sein? die gibts bei dir nicht..bzw wurde nicht definiert...
da kann nix bei rauskommen...
Gib am anfang des Skriptes mal folgendes ein:
und beseitige alle fehler...error_reporting(E_ALL);
-
nilswerner schrieb:
Wie sollte denn auch irgendwas versand werden?
if ($ErrorMsg == "" and $send){ mail("$webmaster","$betreffwebmaster","$koerperwebmaster\n","FROM: $absender\n"); /*Soll der Absender eine Kopie erhalten?*/ if ($kopie == "ja"){ mail("$mail","$betreffabsender","$koerperabsender","FROM: $absender\n"); } $gesendet = "1"; }
Du benutzt immer die variable $send aber was soll damit sein? die gibts bei dir nicht..bzw wurde nicht definiert...
da kann nix bei rauskommen...
Gib am anfang des Skriptes mal folgendes ein:
und beseitige alle fehler...error_reporting(E_ALL);
Die variable $send wird während des Absenden des Formulars bei Register Globals on auf "Formular absenden" gesetzt. Sie existiert also und solang er keinen Fehler bei der Eingabe gemacht hat, sollte die Mail versendet werden.
Lass dir doch einfach mal in der Zeile unterhalb des Mail-Versands den letzten registrierten Error ausgeben. Vielleicht bringt der dich ja weiter.
Gruß
Karlja -
karlja schrieb:
Die variable $send wird während des Absenden des Formulars bei Register Globals on auf "Formular absenden" gesetzt. Sie existiert also und solang er keinen Fehler bei der Eingabe gemacht hat, sollte die Mail versendet werden.
Das passiert aber in dem Skript so nicht ^^
Hier hab ich mal ein wenig was eingefügt..
so gehts...nur die mail adresse ändern ;)
<?php if(isset($_POST['send'])){ $name = $_POST['name']; $vorname = $_POST['vorname']; $strasse = $_POST['strasse']; $hausnummer = $_POST['hausnummer']; $plz = $_POST['plz']; $ort = $_POST['ort']; $telefon = $_POST['telefon']; $fax = $_POST['fax']; $geb = $_POST['geb']; $mail = $_POST['mail']; $location = $_POST['location']; $ErrorMsg = ""; $webmaster = "info@nils-werner.com"; $absender = "info@nils-werner.com"; $betreffwebmaster ="Ambrosia-FM - Anfrage"; $betreffabsender ="Ambrosia-FM - Anfrage"; $koerperwebmaster = " $vorname $name hat soeben eine Nachticht hinterlassen: Daten zur Person: Name: $name Vorname: $vorname Strasse: $strasse $hausnummer Ort: $plz $ort Telefon: $telefon Telefax: $fax Firma: $geb E-Mail: $mail Mitteilung: $location Mit freundlichen Grüßen $vorname $name mailto:$mail "; $koerperabsender = " Vielen Dank für Ihre Mitteilung Wir haben folgende Daten von Ihnen erhalten: Name: $name Vorname: $vorname Strasse: $strasse $hausnummer Ort: $plz $ort Telefon: $telefon Telefax: $fax Firma: $geb E-Mail: $mail Mitteilung: $location Mit freundlichen Grüßen Ambrosia-FM "; if ($mail == ""){ $ErrorMsg .= "Bitte geben Sie eine E-Mail Adresse an"; } else if ($geb == ""){ $ErrorMsg .= "Bitte geben Sie Ihre Firma an"; } else if ($mail != ""){ if (ereg("^[_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@([a-zA-Z0-9-]+\.)+([a-zA-Z]{2,3})$", $mail)){} else { $ErrorMsg .= "Bitte geben Sie eine g�ltige E-Mail Adresse an"; } } if ($ErrorMsg == ""){ mail("$webmaster","$betreffwebmaster","$koerperwebmaster\n","FROM: $absender\n"); /*Soll der Absender eine Kopie erhalten?*/ if ($kopie == "ja"){ mail("$mail","$betreffabsender","$koerperabsender","FROM: $absender\n"); } $gesendet = "1"; } } ?> <html> <head> <title>Kontakt</title> </head> <body link="#808080" vlink="#808080" alink="#808080" background="http://www.ambrosia-fm.de/images/about.jpg"> <div style="position:absolute; width:256; height:380;"> <center> <form name="form" action="kontakt-form-test.php" method="post"> <? If ($gesendet == "1"){ ?> <br /> <br /> <p align="left"><font face="Arial" size="1" color="#808080">Vielen Dank,</font></p> <p align="left"> <font face="Arial" size="1" color="#808080">wir haben Ihre Nachricht erhalten und werden<br /> uns umgehend bei Ihnen melden.</font></p> <font face="Arial" size="2"> <? }else { ?> </font> <center> <table border="0" width="200"> <? if (ErrorMsg != ""){echo "<td colspan=4><font face=Arial size=1 color=#FF0000>".$ErrorMsg."</font></td>";}?> <!--Anschrift--> <tr> <td align="center" valign="top" colspan="4"><p align="left"><b><font face="Arial" size="2" color="#7F8FA9">kontakt</font></b></td> </tr> <tr> <td colspan="2" width="165"><font face="Arial"> <font size="1" color="#808080">Name:<br> </font> <input name="name" value="<? echo "$name"; ?>" size="10" maxlength="30" tabindex="10" ?> </font></td> <td width="250"><font face="Arial"><font size="1" color="#808080">Vorname:<br> </font> <input name="vorname" value="<? echo "$vorname"; ?>" size="10" maxlength="30" tabindex="11" ?> </font></td> </tr> <tr> <td colspan="2" width="165"><font face="Arial"> <font size="1" color="#808080">Strasse:<br> </font> <input name="strasse" value="<? echo "$strasse"; ?>" size="10" maxlength="30" tabindex="12" ?> </font></td> <td width="250"><font face="Arial"><font size="1" color="#808080">Hausnummer:<br> </font> <input name="hausnummer" value="<? echo "$hausnummer"; ?>" size="2" maxlength="30" tabindex="13" ?> </font></td> </tr> <tr> <td colspan="2" width="165"><font face="Arial"> <font size="1" color="#808080">PLZ:<br> </font> <input name="plz" value="<? echo "$plz"; ?>" size="4" maxlength="30" tabindex="14" ?> </font></td> <td width="250"><font face="Arial"> <font size="1" color="#808080">Ort:<br> </font> <input name="ort" value="<? echo "$ort"; ?>" size="10" maxlength="30" tabindex="15" ?> </font></td> </tr> <tr> <td colspan="2" width="165"><font face="Arial"><font size="1" color="#808080">Telefon:<br> </font> <input name="telefon" value="<? echo "$telefon"; ?>" size="10" maxlength="30" tabindex="16" ?> </font></td> <td width="250"><font face="Arial"> <font size="1" color="#808080">Telefax:<br> </font> <input name="fax" value="<? echo "$fax"; ?>" size="10" maxlength="30" tabindex="17" ?> </font></td> </tr> <tr> <td colspan="2" width="165"><font face="Arial"><font size="1" color="#808080">E-Mail:<br> </font> <input name="mail" value="<? echo "$mail"; ?>" size="10" maxlength="30" tabindex="18" ?> </font></td> <td colspan="2"width="250"><font face="Arial"> <font size="1" color="#808080">Firma:<br> </font> <input name="geb" value="<? echo "$geb"; ?>" size="10" maxlength="30" tabindex="19" ?> </font></td> </tr> <tr> <td colspan="3" width="200"><font face="Arial" size="1" color="#808080">Ihre Nachricht an uns:</font></td> </tr> <tr> <td colspan="3"><font face="Arial"> <textarea name="location" tabindex="20" value="<? echo "$location"; ?>" size="26" rows="3" cols="24" ?></textarea> </font></td> </tr> </table> <p><font face="Arial"> <input type="Submit" name="send" value="Formular absenden"> <font size="1" color="#808080"> </font> </font></font></p> <font face="Arial" size="2"> <? } ?> </font> </form> </center> </div> </center> </body> </html>
-
Ich glaube, du meintest Nilswerner...
ambrosia schrieb:
Hi karlja
ich habs eingebaut und hochgeladen! funzt leider trotzdem nicht!!
Es scheint Probleme mit der Mail()-Funktion von Lima zugeben. Ich habe vorgestern versucht nur die Mail()-Funktion auszuführen und zwar keinen Fehler bekommen, aber eine E-Mail habe ich bis heute nicht.
Gruß
Karlja -
Ich hab das Skript auf meinem Server getestet, dort funktioniert es so..
Es wird daher wohl an lima-city liegen... -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage