Kontaktformular - Fehler
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
anliegen
betreff
code
dank
date
datum
email
fehler
firma
hausnummer
http
nachname
nachricht
ort
server
status
test
text
vorname
zeile
-
hi!
Ich prog grad ne page: http://sawei3.lima-city.de/oblak/
und dafür n kontaktformular!!!
nur zeigt er mir immer wenn ich auf abschicken drück nen fehler an!
Parse error: syntax error, unexpected '=' in /home/webpages/lima-city/sawei3/html/oblak/kontakt.php
ich hab mal den php code der kontakt.php rein gestellt!
Danke für eure hilfe!!!
<?php $fehler = ''; $nz = chr(13).chr(10); $Vorname = $_POST['Vorname']; $Nachname = $_POST['Nachname']; $Firma = $_POST['Firma']; $Strasse = $_POST['Strasse']; $PLZ = $_POST['PLZ']; $Ort = $_POST['Ort']; $E-Mail = $_POST['E-Mail']; $Anliegen = $_POST['Anliegen']; if (empty($Vorname)) $fehler .= '<li>der Vorname fehlt!</li>'; if (empty($Nachname)) $fehler .= '<li>der Nachname fehlt!</li>'; if (empty($Strasse)) $fehler .= '<li>die Straße, Hausnummer fehlt!</li>'; if (empty($Ort)) $fehler .= '<li>der Ort fehlt!</li>'; if (empty($PLZ)) $fehler .= '<li>die PLZ fehlt!</li>'; if (empty($Anliegen)) $fehler .= '<li>das Anliegen fehlt!</li>'; if (empty($fehler)) { $an = "weirer@ctoa.at"; // HIER EMPFÄNGER-ADRESSE EINTRAGEN ! $betreff = 'Nachricht via Kontaktformular'; $from = 'From: '.$E-Mail; $datum = 'Datum: '.date('j.n.Y').$nz; $zeit = 'Zeit: '.date('H:i').$nz; $von = 'Von: '.$Vorname.' '.$Nachname.' '.$Firma.$nz .$Strasse .$nz .$PLZ.' '.$Ort .$nz; $linie = '-------------------'.$nz; $text = $datum.$zeit.$von.$linie.$Anliegen; $titel = 'Ihre Nachricht wurde versandt'; mail($an,$betreff,$text,$from); } else $titel = 'Es ist ein Fehler aufgetreten'; ?><?php if (empty($fehler)) { $text = strip_tags($text); $text = htmlentities($text); $text = str_replace($nz,'<br>',$text); echo '<p>Ihre Nachricht wurde verschickt.</p>'; echo '<p>'; echo $text; echo '</p>'; } else { echo '<p>Ihre Nachricht konnte nicht versandt werden, weil'; echo $fehler; echo '</p>'; } ?>
Beitrag geändert: 5.11.2007 20:15:03 von sawei3
Beitrag geändert: 5.11.2007 20:16:16 von sawei3 -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Doch, er muss eine Zeile ausgespuckt haben.... bitte poste nochmal die ganze Fehlermeldung
€dit:
na bitte:
...on line 153
jetzt such mal die Zeile 153 in deinem Skript und poste die Zeile und die sagen wir mal 3 Zeilen drüber/drunter
Beitrag geändert: 5.11.2007 20:43:58 von larsw -
147: $Vorname = $_POST['Vorname'];
148: $Nachname = $_POST['Nachname'];
149: $Firma = $_POST['Firma'];
150: $Strasse = $_POST['Strasse'];
151: $PLZ = $_POST['PLZ'];
152: $Ort = $_POST['Ort'];
153: $E-Mail = $_POST['E-Mail'];
154: $Anliegen = $_POST['Anliegen'];
155: if (empty($Vorname)) $fehler .= '<li>der Vorname fehlt!</li>';
156: if (empty($Nachname)) $fehler .= '<li>der Nachname fehlt!</li>';
157: if (empty($Strasse)) $fehler .= '<li>die Straße, Hausnummer fehlt!</li>';
158: if (empty($Ort)) $fehler .= '<li>der Ort fehlt!</li>';
159: if (empty($PLZ)) $fehler .= '<li>die PLZ fehlt!</li>';
Beitrag geändert: 5.11.2007 21:16:08 von sawei3 -
147: $Vorname = $_POST['Vorname'];
148: $Nachname = $_POST['Nachname'];
149: $Firma = $_POST['Firma'];
150: $Strasse = $_POST['Strasse'];
151: $PLZ = $_POST['PLZ'];
152: $Ort = $_POST['Ort'];
153: $E-Mail = $_POST['E-Mail'];
154: $Anliegen = $_POST['Anliegen'];
155: if (empty($Vorname)) $fehler .= '<li>der Vorname fehlt!</li>';
156: if (empty($Nachname)) $fehler .= '<li>der Nachname fehlt!</li>';
157: if (empty($Strasse)) $fehler .= '<li>die Straße, Hausnummer fehlt!</li>';
158: if (empty($Ort)) $fehler .= '<li>der Ort fehlt!</li>';
159: if (empty($PLZ)) $fehler .= '<li>die PLZ fehlt!</li>';
Beitrag geändert: 5.11.2007 21:16:08 von sawei3
Der Fehler liegt ja in der Zeile 153... und da ist ja unexpected = ...
Also irgendwie erwartet der Parser, das nach der Email-Variable keine Definition kommt, sondern was anderes.
Lass mal die Zeile mit dem Email weg (Evt. auch die obere)... dann schauen, obs immernochnicht funnzt... Ansonsten liegts nicht an dem^^
Falls doch, nimm mal eine andere Variable, anstatt email... zum Beispiel Imail oda so :P
mfg x-bLack -
Also Variablennamen mit "-" hab ich noch nie gesehen
ich denk mal $E-Mail = $_POST['E-Mail']; interpretiert der Parser folgendermaßen...
subtrahiere von der Variablen "$E" den define Wert Mail und dann kommt er nicht weiter weil er mit dem Istgleich nichts anfangen kann.
Änder mal die Variable in $E_Mail oder $EMail um. Natürlich dann überall im Script
Grüßle -
danke!
werd ich morgen gleich mal ausprobieren!
Bis dann!
Gute nacht euch allen limaanern! -
Die Antwort ist teilweise richtig. Dass du den Variablen Namen ändern musst ist klar. Entweder das MAIL direkt mit anderen Buchstaben verbinden oder es ändern.
Der Grund für den Fehler ist dass PHP das MAIL als den Befehl mail() sieht und deswegen die Klammern () mit Werten erwartet und kein =.
Also entweder: $email, $adresse, usw
oder wenn du das mail da willst (warum auch immer!?) $E mail($angaben,...); -
Hallo!
Hab den einen fehler jetzt behoben, aber jetzt sagt er immer dass ich die felder nciht ausgefüllt habe!
Hat dafür wer ne lösung?
Lg. -
Also das Script was du hier zur Verfügung stellst ist soweit ok.
Wenn man dem die Post-Variablen schickt klappt das soweit.
Ich denke mal in deinem Formular hast du entweder die Variablen anders benannt oder du schickst die Daten einfach nicht zu dem hier gezeigten Script.
Grüßle -
Formular:
<form name="formular" method="post" action="kontakt.php" enctype="text/plain"> <table> <tr> <td><font size="2,75">Vorname:</font></td> <td><font size="2,75"><input type="text" name="Vorname" size="20"></font></td> </tr> <tr> <td><font size="2,75">Nachname:</font></td> <td><font size="2,75"><input type="text" name="Nachname" size="20"></font></td> </tr> <tr> <td><font size="2,75">Firma:</font></td> <td><font size="2,75"><input type="text" name="Firma" size="20"></font></td> </tr> <tr> <td><font size="2,75">Straße:</font></td> <td><font size="2,75"><input type="text" name="Strasse" size="20"></font></td> </tr> <tr> <td><font size="2,75">PLZ:</font></td> <td><font size="2,75"><input type="text" name="PLZ" size="20"></font></td> </tr> <tr> <td><font size="2,75">Ort:</font></td> <td><font size="2,75"><input type="text" name="Ort" size="20"></font></td> </tr> <tr> <td><font size="2,75">E-Mail:</font></td> <td><font size="2,75"><input type="text" name="E-Mail" size="20"></font></td> </tr> <tr> <td><font size="2,75">Ihr Anliegen:</font></td> <td><font size="2,75"><textarea name="Anliegen" cols="30" rows="6"></textarea></font></td> </tr> <tr> <td><font size="2,75"><input type="reset" name="Abschicken2" value="Zurücksetzen"></font></td> <td><font size="2,75"><input type="submit" name="Abschicken" value="Abschicken"></font></td> </tr> </font> </table> </form>
Danke -
kann mir da niemand helfen???
Lg. -
das ist bereits passiert!
aber jetzt ist es angeblich erfolgreich abgeschickt worden hab aber nie das mail bekoimmen!
schätz aber, dass das mit dem lima-server zusammen hängt oder?= -
Versuch mal sowas in der Art:
<?php $status = mail($parameter1,...); if (!$status) $fehler = "Es ist ein Fehler aufgetreten, bitte später nochmal versuchen"; else echo "es klappt"; ?>
Falls dann immer noch angeblich die eMail verschickt wurde, muss es wohl am Server liegen, ja. -
Hi!
ich habe auf meiner Seite auch ein Problem mit dem Versenden von Mails.
Der folgende Code soll mir eine Mail senden. Auf der Seite wird auch "Es wurde eine Mail an Sie versandt!" ausgegeben, aber ich erhalte keine Mail.
Hat jemand eine Idee?
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Unbenanntes Dokument</title> </head> <?php $an = 'meineemailaddresse'; $betreff = 'Test'; $inhalt = 'Test'; $header = 'From: meineemailaddresse'; $ret = mail($an,$betreff,$inhalt,$header); if(!$ret) echo "Es wurde keine Mail an Sie versandt!"; else echo "Es wurde eine Mail an Sie versandt!"; ?> <body> </body> </html>
-
Ja wie gesagt, liegt wohl am Server, dein Skript ist OK.
Schreib eventuell mal nen Ticket. -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage