Hilfe zu Fehler - "Parse error"

Einrücken ist keine gute Idee, wie yaslaw schon sagt, sauber schreiben.

in etwa so:

PHP:
if($t == $r)
{
     $muh = "kuh";
     if($muh == "kuh")
     {
           echo $muh;
     }

     echo "Ende Gelände.";
}

so hast du mehr Übersicht wo bracer fehlen könnten ;)

edit: Was ich auch noch empfehlen kann wäre als Editor eclipse oder GVim. Dann passiert dir sowas auch nicht :D ( sind beide Freeware )
 
Zuletzt bearbeitet:
Warum bringt hier keiner mal eine kurze, knackige Antwort? Eine Korrektur bringt manchmal mehr als zig So-ist-der-Syntax-Beispiele. :rolleyes:

Dein Fehler ist dieses eine If-Konstrukt:
PHP:
if ($num == "0")

$sql = "INSERT INTO warenkorb (nummer, artikelid, anzahl)
VALUES ('', '$nummer', '$id', '$anzahl')";
$result = mysql_query($sql) or die (mysql_error());
else

$sql = "UPDATE warenkorb SET anzahl=anzahl+$anzahl
WHERE nummer=".$_SESSION['nummer']."
AND id='$id'";
mysql_query($sql) or die (mysql_error());
header("Location: warenkorb_1.php");

Wie hier im Thread schon mehrfach gepostet, müssen geschweifte Klammern vorhanden sein, wenn man mehr als nur ein Statement ausführen will.
Sind diese Klammern nicht vorhanden, kann PHP das Wort "else" keiner If-Bedingung zuordnen und wirft einen Fehler.

Richtig würde es also so aussehen:
PHP:
if ($num == "0") {
	$sql = "INSERT INTO warenkorb (nummer, artikelid, anzahl) VALUES ('', '$nummer', '$id', '$anzahl')";
	$result = mysql_query($sql) or die (mysql_error());
}
else {
	$sql = "UPDATE warenkorb SET anzahl=anzahl+$anzahl WHERE nummer=".$_SESSION['nummer']." AND id='$id'";
	mysql_query($sql) or die (mysql_error());
	header("Location: warenkorb_1.php");
}
 
Deluxe manchmal bringt es Leute viel eher weiter wenn man Ihnen die Hinweise gibt und Sie den Fehler selbst finden.
 
Eine Korrektur bringt manchmal mehr [...]

Deluxe manchmal bringt es Leute viel [..]

Merkst was? ;)

Klar, man darf nicht immer alles vorkauen. Nur bei so grundlegenden Fehlern darf man davon ausgehen, dass der Gegenüber nur sehr wenig Programmiererfahrung besitzt. Da ist es absolut kein Fehler gewisse Stellen nochmal zu verdeutlichen.

Und mal so nebenbei: Ich habe alleine beim Überfliegen schon diesen Fehler gesehen, der Threadauthor hingegen sucht diesen schon seit einer Ewigkeit. Ein bisschen Mitleid darf man da doch auch haben. :D
 
da gehen die Meinungen auseinander.

Sicher geb ich auch da Hilfe wo man es partout nicht findet. Aber meistens braucht es einfach nur einen Hinweis darauf und ich glaube wir haben mehrfach auf den Fehler in den IF Konstrukten hingewiesen und an Beispielen gezeigt wie es gehört.
Es bringt Ihr halt auch nix nur den Fehler korrigiert zu bekommen und dann die Korrektur zu übernehmen. Wenn Sie sich durch unsere Anregungen damit beschäftigt und Ihren Code nochmal durchgeht bringt Ihr das doppelt so viel.....

just my 2 cents..



Und wäre Sie nochmal gekommen mit einer Aussage "Hilfe ich finds absolut nicht" dann hätte ich ihr auch die Korrektur so gegeben
 
Warum bringt hier keiner mal eine kurze, knackige Antwort? Eine Korrektur bringt manchmal mehr als zig So-ist-der-Syntax-Beispiele.
Ich wollte - doch als ich in den Code schaute, merkte ich, dass ich nicht herausfinde wo der eine if endet und der nächste beginnt, oder ob sie geschachtelt sein sollen.

Meine Lösung wühre zu 70% falsch gewesen, so sehr ich mich auch bemüht hätte (und nein, ich will nicht erst herausfinden was der Code eigentlich machen sollte (fachlich, nicht technisch) um ihn dan richtig zu stellen)

PS. Unsere Antworten waren kurz und knackig....
 
Zurück