Irgendwie entsteht ein Fehler

Hallo alle zusammen,
ich habe ein kleines problem, und zwar wird die Seite nicht geöffnet. Sondern es kommt eine Fehlermeldung: Parse error: parse error, unexpected $ in /var/www/html/kontakt.php on line 180.
Das heisst ja das ein Fehler in zeile 180 vorliegt, aber ich kann keinen finden.
Kann vllt. jemand mal drüberschaun und mir sagen was falsch ist oder was fehlt.
Das wäre super nett.
Danke
Tim

hier der code:
PRE:

Mein Titel
<!–
a{text-decoration: none;}
–>

<?php if(isset($_POST['senden']))
{ if(empty($\_POST['name'])) { $fehler\_name = "Bitte geben Sie Ihren Namen ein! "; $fehler=1; } if(empty($\_POST['mail'])) { $fehler\_mail = "Bitte geben Sie Ihre E-Mail-Adresse an! "; $fehler=1; } if(empty($\_POST['betreff'])) { $fehler\_betreff = "Bitte geben Sie eine Betreff ein! "; $fehler=1; } if(empty($\_POST['Textfeld'])) { $fehler\_text = "Bitte auch einen Text eingeben! "; $fehler=1; } } if(isset($\_POST['senden']) && !isset($fehler)){ $email\_to = "[[email protected]](mailto:[email protected])"; $header="From:".$\_POST['name']."\n"; $kommentar.='Nachricht: '.$\_POST['Textfeld']; mail($email\_to , $\_POST['betreff'] , $kommentar , $header) or die ("Konnte eMail nicht versenden!"); ?\> \ <?php echo "Vielen Dank ". $_POST['name'] .",
"; echo "deine Email mit dem Betreff \"". $\_POST['betreff'] ."\" wurde erfolgreich versendet. "; echo "Ich werde mich schnellst möglich darum kümmern."; } else { ?\> =$fehler\_name ?\> Name: \> =$fehler\_mail ?\> E-Mail: \> =$fehler\_betreff ?\> Betreff: \> Ihre Nachricht: =$fehler\_text ?\> <?php if(isset($_POST['Textfeld'])) { echo $_POST['Textfeld']; } ?>

[Fenster schliessen](javascript:window.close())

<!–
function clickIE() {if (document.all) {(message);return false;}}
function clickNS(e) {if
(document.layers||(document.getElementById&&!document.all)) {
if (e.which==2||e.which==3) {(message);return false;}}}
if (document.layers)
{document.captureEvents(Event.MOUSEDOWN);document.onmousedown=clickNS;}
else{document.onmouseup=clickNS;document.oncontextmenu=clickIE;}
document.oncontextmenu=new Function(„return false“)
// -->

Hallo alle zusammen,
ich habe ein kleines problem, und zwar wird die Seite nicht
geöffnet. Sondern es kommt eine Fehlermeldung: Parse error:
parse error, unexpected $ in /var/www/html/kontakt.php on line
180.
Das heisst ja das ein Fehler in zeile 180 vorliegt, aber ich
kann keinen finden.

Es heisst, das DORT der Fehler aufgetreten ist. Und wenn man nichts findet dann fehlt noch was :wink:

<?php :echo "Vielen Dank ". $_POST['name'] .",
"; echo "deine Email mit dem Betreff \"". $\_POST['betreff'] ."\" wurde erfolgreich versendet. "; echo "Ich werde mich schnellst möglich darum kümmern."; } else { ?\>

lasse das „else{“ weg, dann bekommst Du weitere fehlermeldungen…
Aber das Script läuft durch…

Kleiner Tip:
Lass den HTML-Code von echo oder printf ausgeben, so steigst Du besser durch und der Code sieht dann auch sauberer aus.
(Und Du hättest noch die Möglichkeit Cookies zu setzen :wink:

Hi liquid,

ich hab deinen Quelltext aus Mangel an Zeit nur grob überflogen. Mir ist aber folgendes aufgefallen

=$fehler\_name ?\>


speziell
=$fehler\_name

Sowas hab ich öfter in deinem Quelltext gefunden, also =$irgendeinevariable. 

Das dürfte hier falsch sein, wenn man sich die letzte PHP Anweisung anschaut echo $PHP\_SELF; wenn man sich jetzt das ganze rein PHP-Seitig betrachtet sieht das ganze so aus


    
    echo $PHP\_SELF;
    =$fehler\_name



was nicht funktioniert.

Gruß Michi

Anmerkung:

=$variablenname ?> ist eine kurze Schreibweise fuer echo $variablenname ?> und voellig korrekt.
Fuer beides gilt: short_open_tag muss aktiviert sein.

weiter Anmerkung zum Script an sich (keine Fehlerbehebung):

$PHP_SELF setzt voraus, das register_globals aktiviert ist. Wenn man es nutzen moechte $_SERVER[‚PHP_SELF‘] benutzen. Weiterhin ist hier auf die Sicherheit des Scriptes zu achten, da dieser Parameter leicht verfaelscht werden kann (beliebtes Ziel fuer XSS Angriffe).
Siehe dazu auch http://blog.phpdoc.info/archives/13-guid.html

Gruss
Stefan

Hallo Tim,

hab kurz mal drueber geschaut und es sieht so aus als ob Du die geschweifte Klammer vom } else { (Zeile 64-66) nicht schliesst.

Bitte auch meinen anderen Post beachten.

Gruss
Stefan

Hi Stefan,

danke für den Tipp mit =, man lernt halt nie aus. Ich selber bleib aber wegen der besseren Übersicht dabei echo zu benutzen. Aber gut zu wissen wenn ich mal den Quelltext eines anderen habe.

Gruß Michi

Hallo ihr beiden.
erstmal danke für eure Antworten. Irgendwie kann ich den fehler nicht finden den Stefan bzw. Michi anspricht. In Zeile 64 kann ich nix finden was falsch sein könnte und Michis Antwort versteh ich einfach nicht.
Sorry das ich nochmal nachfrage, aber kann mir jemand meienn fehler genauer erklären, ih bin kein php spezi.
Danke euch schon einmal im vorraus.
Tim

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]