Parse error: parse error, unexpected T_IF in ... on line 49

MXWorker

Aktives Mitglied
Thread Starter
Dabei seit
12.03.2008
Beiträge
132
Reaktionspunkte
1
Hab hier folgenden Code der nicht richtig funktioniert. Ausserhalb der Tabellenzelle gehts. Innerhalb nicht. Woran kann das liegen?

PHP:
	  echo "<tr><td align=\"center\" height=\"30\" background=\"$pic_path/template_1_03.jpg\">" . $model['name'] .   
	  
	if ($model["onlinestatus"] == "1"){ // Zeile 49 ist die hier
  		echo 'Ich bin ONLINE'; 
	} else {
   		echo 'Ich bin OFFLINE';
		}
		
. "</td></tr>";
 
Du kannst nicht einfach ein if zwischen zwei Punkte "." knallen.
 
Wenn, dann nur mit der Kurzschreibweise von if-else-conditions:
PHP:
echo "<tr><td align=\"center\" height=\"30\" background=\"$pic_path/template_1_03.jpg\">" . $model['name'] . (
($model["onlinestatus"] == "1")?'Ich bin ONLINE':'Ich bin OFFLINE'
) . "</td></tr>";

Und noch ein Tipp, da Du sowieso schon Variablen mit Punkten an Text konkatenierst: Nutze einfache Anführungszeichen, dann brauchst Du die doppelten des HTML-Quelltextes nicht zu escapen, z.B.:
PHP:
echo '<tr><td align="center" height="30" background="'.$pic_path/template_1_03.jpg.'">';
 
  • Gefällt mir
Reaktionen: MXWorker
sondern? wie soll ich es sonst machen? Haste auch bitte ne Lösung für mein Beispiel?
 
wenn dir das bespiel da nicht reicht mit der kurzschreibweise, kannst doch auch separate echo ohne verkettung mit . machen:
echo "<tr><td"
if echo "online"
echo "</td></tr>"

php muss das nicht als ein string ausgeben, das ist dem egal...
 
  • Gefällt mir
Reaktionen: MXWorker
Wenn, dann nur mit der Kurzschreibweise von if-else-conditions:
PHP:
echo "<tr><td align=\"center\" height=\"30\" background=\"$pic_path/template_1_03.jpg\">" . $model['name'] . (
($model["onlinestatus"] == "1")?'Ich bin ONLINE':'Ich bin OFFLINE'
) . "</td></tr>";

Und noch ein Tipp, da Du sowieso schon Variablen mit Punkten an Text konkatenierst: Nutze einfache Anführungszeichen, dann brauchst Du die doppelten des HTML-Quelltextes nicht zu escapen, z.B.:
PHP:
echo '<tr><td align="center" height="30" background="'.$pic_path/template_1_03.jpg.'">';

Super, danke, so gehts. Kurzschreibweise sagt mir bisher nichts, da ich mit PHP gerade anfange. Wieder was dazu gelernt.
 
Wenn, dann nur mit der Kurzschreibweise von if-else-conditions:
PHP:
'Ich bin ONLINE':'Ich bin OFFLINE'
/QUOTE]

Kann ich dem Online und Offline noch ne Farbe zuordnen. Also offline rot und Online grün z.B.?
 
Genau, z.B.:

PHP:
'Ich bin <span class="online">ONLINE</span>':'Ich bin OFFLINE'

Ok, ich habs so gemacht:

PHP:
<font color="#336600">(ONLINE)</font>':'<font color="#CC0000">(OFFLINE)</font>'

Mit Deiner Methode kann ich es dann natürlich besser über CSS ansprechen.
 
Ok, ich habs so gemacht:

PHP:
<font color="#336600">(ONLINE)</font>':'<font color="#CC0000">(OFFLINE)</font>'

Mit Deiner Methode kann ich es dann natürlich besser über CSS ansprechen.

Ja, versteh ich auch. Ist langweilig mit CSS.
 
...
Und noch ein Tipp, da Du sowieso schon Variablen mit Punkten an Text konkatenierst: Nutze einfache Anführungszeichen, dann brauchst Du die doppelten des HTML-Quelltextes nicht zu escapen, z.B.:
...
Der Tip ist goldrichtig.
Weiterer Vorteil der einfachen Anführungszeichen ist, dass der Code schneller wird.
 
Zurück
Oben Unten