T_STRING-Probleme (für Syntaxfreaks) Arrgghh..

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Benutzeravatar
Fennias Maxim
Mitglied
Beiträge: 489
Registriert: 12.08.2005 20:16
Wohnort: Technodrome
Kontaktdaten:

T_STRING-Probleme (für Syntaxfreaks) Arrgghh..

Beitrag von Fennias Maxim »

Code: Alles auswählen

if (file_exists($itemarray[$xe].".php") && $userdata[username] == $searchname) { $itemlinkstart = "<a href=\"".$itemarray[$xe].".php\">"; $itemlinkend = "</a>"; $itemlinktxt = "Click here to use... ";}

					$playeritems .= '<tr>
                                        <td class="row1"><span class="gensmall">'.$itemlinkstart.'<img src='shop/images/$itemarray[$xe].''.$itemfilext.' title='$itemlinktxt$itemarray[$xe]' alt='$itemlinktxt$itemarray[$xe]' border='0'>'.$itemlinkend.'</span></td>
					<td class="row2"><span class="gensmall"><a href='shop_iteminfo.php?action=displayitem&item= .ucwords($itemarray[$xe]). '>' .ucwords($itemarray[$xe]). '</A></span></td>
					<td class="row1"><span class="gensmall">'.$descrow['ldesc'].'</td>';
				}
Jedenfalls bekomme ich eine fehlermeldung in der Zeile mit dem ersten row1:Parse error unexpected T_STRING in /forum/shop.php on line 223

Ich hab die Zeile schon nach besten "Syntaxwissen" geprüft kann aber den Fehler nicht finden.

EDIT: Verdammt, das war das falsch Forum. Bitte mal nach Coding und technik verschieben. Danke!
50% aller Fragen können mit der Knowledge Base oder der Forensuche beantwortet werden!
Warum hast du also diesen Thread hier eröffnet?
Benutzeravatar
S2B
Ehemaliges Teammitglied
Beiträge: 3258
Registriert: 10.08.2004 22:48
Wohnort: Aachen
Kontaktdaten:

Beitrag von S2B »

Hast du deinen Code schon mal mit einem Editor mit Syntax-Highlighting angeschaut? Wenn du das nämlich tust, siehst du schnell, wo sich der Fehler versteckt... :wink:
Gruß, S2B
Keinen Support per ICQ/PM!
Hier kann man meine PHP-Skripte und meine MODs für phpBB runterladen.
Benutzeravatar
chriss713
Mitglied
Beiträge: 229
Registriert: 06.06.2005 14:06

Beitrag von chriss713 »

Solltest Du wirklich mal machen das mit dem Syntax-Highlightning! ;)
Da ist ja (fast) mehr falsch als richtig!

Ein paar Tipps.
- HTML-Attributwerte müssen in doppelte Anführungszeichen eingeschlossen sein, also z.B.

Code: Alles auswählen

<a href="http://www.domain.de/link.html">
Einfache Anführungszeichen oder gar keine sind nicht erlaubt, auch wenn das von den meisten Browsern richtig interpretiert wird.

- um doppelte Anführungszeichen in Strings darstellen zu können, muss Du sie mittels \ escapen, z.B.

Code: Alles auswählen

$string = "<a href=\"http://www.domain.de/link.html}">"
- wenn Du zwei Variablen mittels Stringverkettung verbinden möchtest, ist es wesentlich eleganter es so zu machen

Code: Alles auswählen

$string = $var1 . $var2
Zwischen den zu verkettenden Variablen muss nichts weiter sein als ein Punkt "."

- Es gibt einen Unterschied zwischen doppelten und einfachen Anführungszeichen. Alles, was zwischen doppelten Anführungszeichen steht, wird von geparst, d.h. das

Code: Alles auswählen

$var = "Welt";
print "Hallo $var!"
gibt "Hallo Welt!" aus.
Wohingegegen

Code: Alles auswählen

$var = "Welt";
print 'Hallo $var!'
"Hallo $var!" ausgibt.
Benutzeravatar
S2B
Ehemaliges Teammitglied
Beiträge: 3258
Registriert: 10.08.2004 22:48
Wohnort: Aachen
Kontaktdaten:

Beitrag von S2B »

Und noch was: Wenn du viel Quellcode mit relativ wenigen Variablen ausgeben willst, kannst du den Quellcode auch einfach direkt in die Datei schreiben, z.B. so:

Code: Alles auswählen

<?php
// dein php-Code
?>
<a href="lalala.php" target="_blank">test</a>
...
<span class="big"><?php echo $deine_variable ?></span>
Dadurch wird das ganze übersichtlicher und du siehst HTML-Fehler, solange du einen Multihighlighter verwendest. :wink:

Edit: @chriss713: Das komische ist: In den (X)HTML-Spezifikationen vom W3C steht nichts davon, dass man " anstatt ' verwenden sollte. Wenn man sie braucht, sind sie nicht da. :roll: :D
Gruß, S2B
Keinen Support per ICQ/PM!
Hier kann man meine PHP-Skripte und meine MODs für phpBB runterladen.
Gast210225

Beitrag von Gast210225 »

@S2B: stimmt, das ist komisch, davon hab ich noch nie was gelesen..... :roll: Aber hast du schon mal eine HTML Seite gesehen, wo ein ' benutzt wurde?
Benutzeravatar
chriss713
Mitglied
Beiträge: 229
Registriert: 06.06.2005 14:06

Beitrag von chriss713 »

S2B hat geschrieben:Edit: @chriss713: Das komische ist: In den (X)HTML-Spezifikationen vom W3C steht nichts davon, dass man " anstatt ' verwenden sollte. Wenn man sie braucht, sind sie nicht da. :roll: :D
Sorry, ich nehme alles zurück und behaupte das Gegnteil, wie auch hier nachzulesen, ist es tatsächlich egal, ob " oder ' : http://de.selfhtml.org/html/allgemein/t ... #attribute
Sorry wg. der Fehlinformation, ich war mir ganz sicher, dass es so ist! Nochmal Tschuldigung! :roll:
123teddy321
Mitglied
Beiträge: 290
Registriert: 29.07.2005 17:27
Kontaktdaten:

Beitrag von 123teddy321 »

ich finde es ist besser für html ' zu verwenden, denn wenn man es mal in einen php echo() befehl setzen will, muss man es nicht erst immer diese \ vor ein " machen!
Gast210225

Beitrag von Gast210225 »

Die andere Frage ist dann, ob es XHTML valid ist...
Benutzeravatar
S2B
Ehemaliges Teammitglied
Beiträge: 3258
Registriert: 10.08.2004 22:48
Wohnort: Aachen
Kontaktdaten:

Beitrag von S2B »

JG hat geschrieben:Die andere Frage ist dann, ob es XHTML valid ist...
Ist es komischerweise. :-?

@teddy: Warum nicht einfach ' für php-Strings verwenden? Das ist sowieso sinnvoller, da das parsen dann optimiert wird (der Parser muss nicht in den Strings nach Variablen suchen). :wink:
Gruß, S2B
Keinen Support per ICQ/PM!
Hier kann man meine PHP-Skripte und meine MODs für phpBB runterladen.
Gast210225

Beitrag von Gast210225 »

@S2B: wo hast du geschaut, ob es Valid ist? Ich hab mal bei validator.w3.org statt " ein ' eingetippt, und er hat nicht gemotzt.
Antworten

Zurück zu „Coding & Technik“