parse error und ich weiß nicht warum
Aleks
- php
0 Marc Reichelt0 Thorsten F.0 Marc Reichelt0 Aleks
0 Aleks
hallo zur späten stunde,
habe hier einen parse error und finde die ursache nicht. fehlermeldung lautet:
"Parse error: parse error, unexpected '>' in /home/www/web53/html/datenkbank.php on line 31"
while ($row = mysql_fetch_object($ergebnis)) {
31 echo '<b>Name:</b>'.$row->name.'<br />';
echo '<b>Ort:</b>'.$row->ort.'<br />;
echo '<img src="bilder/email.gif" alt="" /><a href="mailto:'.$row->email.'">'.$row->email.'</a>';
echo '<img src="bilder/home.gif" alt="" /><a href="'.$row->url.'" target="_blank">'.$row->url.'</a><br />';
echo 'Datum:'.$row->datum.'<br />';
echo 'Eintrag:<br />'.$row->kommentar.'<hr />';
}
wäre super, wenn mir jemand auf die sprünge helfen könnte!
danke im voraus!
Hallo Aleks,
Vielleicht meinst du ja $row=>name, statt $row->name.
Und das im ganzen von dir genannten Codeausschnitt, also auch $row=>kommentar etc.
Gehören die ">>" zu Beginn jeder Zeile auch mit zum Quelltext? ;-)
Bis dann!
Marc Reichelt || http://www.marcreichelt.de/
hi;
Gehören die ">>" zu Beginn jeder Zeile auch mit zum Quelltext? ;-)
nein, die gehören nicht dazu ;)
sollte nur den quelltext verdeutlichen.
habe es jetzt mal ausprobiert, aber ich erhalte weiterhin dieselbe fehlermeldung :(
muss ich vielleicht escape-sequenzen einsetzen, kenne mich da leider noch nicht so aus.
danke trotzdem!
Hallo Aleks,
hab noch was gefunden:
echo '<b>Ort:</b>'.$row->ort.'<br />;
^^ einfaches Anführungszeichen
Bis dann!
Marc Reichelt || http://www.marcreichelt.de/
hi,
echo '<b>Ort:</b>'.$row->ort.'<br />;
^^ einfaches Anführungszeichen
stimmt, das hab ich übersehen. nach so vielen stunden am pc...
allerdings wird immernoch derselbe fehler gemeldet !?!?!
hab eben mal ausprobiert, die anführungszeichen zu tauschen (einfache gegen doppelte). hat aber auch nichts genützt.
Hi,
echo '<b>Ort:</b>'.$row->ort.'<br />;
Hm. In der Operator-Precedence-Tabelle taucht -> nicht auf - kann es sein, daß es da ein Problem gibt?
Was passiert, wenn Du den Teil $row->ort in Klammern setzt, also
echo '<b>Ort:</b>'.($row->ort).'<br />';
(analog in den anderen Zeilen)
cu,
Andreas
hi,
Was passiert, wenn Du den Teil $row->ort in Klammern setzt, also
echo '<b>Ort:</b>'.($row->ort).'<br />';
habe deine anweisungen befolgt, aber leider hat sich nichts geändert. anscheinend scheint das problem nicht in zeile 31 zu liegen, habe diese und ihre nachbarzeilen nämlich gerade mal einkommentiert, doch die fehlermeldung bleibt trotzdem gleich.
Hi,
habe deine anweisungen befolgt, aber leider hat sich nichts geändert. anscheinend scheint das problem nicht in zeile 31 zu liegen, habe diese und ihre nachbarzeilen nämlich gerade mal einkommentiert, doch die fehlermeldung bleibt trotzdem gleich.
Hm. Hast Du weiter oben irgendwo einen String mit einfachem Anführungszeichen, der nicht an der vorgesehenen Stelle geschlossen wird?
cu,
Andreas
hi,
Hm. Hast Du weiter oben irgendwo einen String mit einfachem Anführungszeichen, der nicht an der vorgesehenen Stelle geschlossen wird?
ja den hatte ich, in zeile 25 :-\
jetzt hab ich einen fehler in zeile 27 : " unexpected T_VARIABLE, expecting ',' or ';' "
war mitten im quellcode, habe die stelle min. 10 mal durchgechecked, aber immer übersehen. man sollte sich wohl nicht so sehr auf die zeilenangaben der fehlermeldungen verlassen.
Hi,
Hm. Hast Du weiter oben irgendwo einen String mit einfachem Anführungszeichen, der nicht an der vorgesehenen Stelle geschlossen wird?
ja den hatte ich, in zeile 25 :-\ war mitten im quellcode, habe die stelle min. 10 mal durchgechecked, aber immer übersehen. man sollte sich wohl nicht so sehr auf die zeilenangaben der fehlermeldungen verlassen.
Naja, in Zeile 31 wurde dieser String dann geschlossen, danach stand <b (also ein Vergleich mit der Konstante b) und danach dann das angemeckerte >
jetzt hab ich einen fehler in zeile 27 : " unexpected T_VARIABLE, expecting ',' or ';' "
Dann fehlt vor Zeile 27 wohl ein Komma oder ein Semikolon.
cu,
Andreas
Probiere mal statt
$row->name
$row["name"] oder $row['name'] oder $row[name]
eins davon wird dir sicherlich helfen.
Hallo Thorsten,
Probiere mal statt
$row->name
$row["name"] oder $row['name'] oder $row[name]
Bitte vergiss $row[name] ganz schnell wieder. PHP interpretiert das zwar, aber streng genommen ist das falsch und kann schnell (bei bestimmten Strings in den Klammern) zu Fehlern führen!
Ansonsten hast du Recht, denn ich denke auch nicht dass er auf ein Objekt mit dem Namen $row zugreifen möchte, sondern eher auf die Elemente eines assoziativen Arrays:
http://www.php.net/manual/de/language.types.array.php
Grüße
Marc Reichelt || http://www.marcreichelt.de/
Hi,
Ansonsten hast du Recht, denn ich denke auch nicht dass er auf ein Objekt mit dem Namen $row zugreifen möchte,
while ($row = mysql_fetch_object($ergebnis)) {
fetch_object hört sich aber schon nach Objekt an ...
Beispiel 1 aus der Doku zu der Methode sieht auch (aufs wesentliche reduziert) so aus:
$row = mysql_fetch_object($result);
echo $row->field;
cu,
Andreas
Hallo MudGuard,
Beispiel 1 aus der Doku zu der Methode sieht auch (aufs wesentliche reduziert) so aus:
$row = mysql_fetch_object($result);
echo $row->field;
OK ich gebe mich geschlagen. Doch nicht so viel mit Objekten in PHP zu tun gehabt... ;-)
Bis dann!
Marc Reichelt || http://www.marcreichelt.de/
hi Thorsten,
danke erstmal für deine antwort!
Probiere mal statt
$row->name
$row["name"] oder $row['name'] oder $row[name]
habe die ersten beiden varianten ausprobiert, aber kommt auch weiterhin dieselbe fehlermeldung.
so, danke an alle für eure hilfe zu später stunde!
jetzt funktioniert alles wie ich es mir vorgestellt habe.
wünsche euch allen noch eine gute nacht!