» Forum » Allgemein » HTML, PHP, SQL,... » Häufigster PHP Fehler
  Mitglieder   |   Gallery   |   FAQ's   |   Regeln

[ Anmelden zum schreiben ]

Häufigster PHP Fehler
annemarie
Mitglied
 Beitragspunkte

0 Mitglieder finden den Beitrag gut.

Merkliste 30.06.2009 - 23:19:21     Zitieren
Häufigste PHP Fehler

Zitat
Parse error: parse error, expecting `','' or `';'' in scriptpfad on line 3



Dieser fehler kommt häufig vor wenn eine codezeile nicht terminiert wurde durch ein Semikolon --> ;

<?php
	echo 'Hallo '
	echo 'Welt';
?>


gibt folgende meldung aus:

Zitat
Parse error: parse error, expecting `','' or `';'' in scriptpfad on line 3



Die Meldung gibt uns nun schon genug Informationen, z.b.
  • wie der Fehler zu beheben ist
  • was es für ein Fehler ist
  • wo der Fehler ist


Analysieren wir die Fehlermeldung der Reihe nach.

"Parse error: parse error"

Da php eine Scriptsprache ist liegt der Code nicht bereits Ausführfertig vor wie bei einer kompilierten Binary, z.b. eine *.exe Datei.
php muss erst die gesamte Datei einlesen (parsen) und lässt erst dann den Code "durchlaufen".

Der php parser macht hiermit darauf aufmerksam das er den Code nicht korrekt erkennen konnte.
dies liegt meistens an vergessenen Zeichen wie der Terminierung der Zeile oder des Befehls durch ein Semikolon --> ;

"expecting `','' or `';''"

expecting - "erwarte"

der php parser sagt hier klipp und klar das er hier (hier wird gleich erklärt) ein Komma oder ein Semikolon erwartet hätte.

Expecting ist nicht zwingend angegeben, es kann auch eine Meldung kommen in dem der parser auch nicht weiterweiß Zwinker

Zitat
Parse error: parse error in scriptpfad on line 3



"in scriptpfad"

"Scriptpfad" repräsentiert hier einen kompletten Pfad an dessen ende der Name der Datei steht in der der Fehler aufgetreten ist.

"on line 3"

hier teilt php uns mit in welcher Zeile der Fehler aufgetreten ist.
ganz einfach oder?

Problem
Da wir mittlerweile den Pfad zu Datei wissen ist es jetzt ein Kinderspiel die entsprechende Codezeile zu korrigieren.

<?php
	echo 'Hallo ';
	echo 'Welt';
?>


Also noch einmal zusammengefasst.
Der php parser erwartet im Script in Zeile Nummer 3 ein Komma oder ein Semikolon.
Hier in meinem beispiel fehlt ein Semikolon zum abschließen der Zeile.

Parse errors ereignen sich immer dann wenn die php Syntax nicht eingehalten wird.
Häufig verschlampt man sich beim konkatinieren (.)

$string = 'das Ergebnis war '.$mannschaft1'. zu '.$mannschaft2;


ich vergesse zum beispiel liebend gerne das Semikolon, wie im Gesamtbeispiel gezeigt.

Hilfestellung

Ein Editor mit Syntaxhighlightning kann euch optisch sehr gut Hinweise darauf geben ob eure Syntax stimmt oder wo es kränkelt.

Hier mal eine Screencast PSPad Demonstration mit Syntaxhighlightning & Encoding type wechsel

PSPad ist klein und kann viel und ist umsonst.
Hier gehts zum Download von PSPad

So ich hoffe euch hat es gefallen / geholfen wie auch immer.

Immer erst selber nach dem Fehler schauen, so ein Erfolgserlebnis kann was tolles sein Zwinker


verwendete ilchClan Version: 1.1

betroffene Homepage: ilch.de


Zuletzt modifiziert von Ithron am 01.07.2009 - 12:18:22
Ithron
Hall Of Fame
24 Beitragspunkte
Posts: 2658

0 Mitglieder finden den Beitrag gut.

Merkliste 01.07.2009 - 12:18:55     Zitieren
Ebenfalls Sticky + Rechtschreib- und Smileyfehler entfernt.


Zitat geschrieben von loW

Ja ich habs gesehen und wenn ichs kostenlos bekomm dann zahl ich doch nix dafür oder?


DjGeCk0
Administrator
92 Beitragspunkte
Posts: 2996

User Pic

0 Mitglieder finden den Beitrag gut.

Merkliste 26.07.2009 - 21:13:29     Zitieren
jo netter Beitrag, danke
wieder was dazulernen können Smilie


.:.Module, Zitate, 1-Klick-IMG-Host, MD5 und mehr.:.
"Do not argue with an idiot. He will drag you down to his level and beat you with experience."
SlashLife
Mitglied
7 Beitragspunkte
Posts: 45

0 Mitglieder finden den Beitrag gut.

Merkliste 31.12.2009 - 19:00:44     Zitieren
Viel wichtiger zu nennen, weil nicht ganz so trivial zu finden und verstehen ist eigentlich der

Unexpected $end in <script>

Dieser Fehler weist darauf hin, dass in <script> irgendetwas, was hätte geschlossen werden müssen, nicht geschlossen wurde. Meistens ist dies eine fehlende }, wenn ihr diesen Fehler bekommt, solltet ihr jedoch auch nach nicht geschlossenen Strings (' / " -- Aufpassen: Vielleicht habt ihr das Zeichen irgendwo innerhalb des Strings verwendet und zu escapen vergessen, wodurch sich die Stringgrenzen verschoben haben?) und anderen Klammerpaaren Ausschau halten. Die Includes braucht ihr nicht zu prüfen, da jeder Codeblock in genau demselben Script begonnen und beendet werden muss.

Wenn ihr gerade vorher einen ganzen Codeblock auskommentiert habt, kann es auch sein, dass die Kommentargrenzen nicht genau mit den Blockgrenzen übereinstimmen und sich auf diese Art obige Zeichen in den Code reingemogelt haben.
UniX
Mitglied
1 Beitragspunkte
Posts: 96

0 Mitglieder finden den Beitrag gut.

Merkliste 08.12.2011 - 17:01:33     Zitieren
Hast nen kleinen fehler laut deinen bildern müsste der Fehler in line 2 sein

da bei dir das semikolon in zeile 2 fehlt?
Beispiel 1
1 <?php
2    echo 'Hallo '
3    echo 'Welt';
4 ?>

Beispiel 2	
1 <?php
2    echo 'Hallo ';
3    echo 'Welt';
4 ?>


Gfeundene verschreibär un rechtschreibfeihler Dürft ihr behalten! Der Rest ist unter meinem ©
BAMBOIHH
Mitglied
14 Beitragspunkte
Posts: 180

User Pic

0 Mitglieder finden den Beitrag gut.

Merkliste 08.12.2011 - 17:36:35     Zitieren
Das das ein Thread von 2009 ist, hast Du schon gemerkt... Zwinker
Forcey
Mitglied
66 Beitragspunkte
Posts: 409

User Pic

0 Mitglieder finden den Beitrag gut.

Merkliste 08.12.2011 - 19:16:38     Zitieren
Außerdem ist der Beitrag oben korrekt.

Probiers halt selbst im Php, beim fehlenden Semikolon sagt er immer next Line.


schupke.info >>
raging-rhinoz.eu >>

[ Anmelden zum schreiben ]