PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Bedingung zwischen html/php-Code


consch
16.06.2009, 00:48:42
Hallo,

ich habe folgenden Auszug aus meiner Datei:
foreach ($res as $key => $value) {
//Suchwörter farblich markieren
$res[$key][Name]= mark_words($res[$key][Name], $array);
$res[$key][Strasse]= mark_words($res[$key][Strasse], $array);
$res[$key][Ort]= mark_words($res[$key][Ort], $array);
$res[$key][Zweck]= mark_words($res[$key][Zweck], $array);
$res[$key][Verweisname] = mark_words($res[$key][Verweisname], $array);
//echo $res[$key][Verweisname];


if($res[$key][Name] == $res[$key][Verweisname]) {
echo "VErweisnamen ist identisch mit Namen";
} else {
echo "Verweisname nicht identisch mit Namen";
}

$ausgabe .= '<tr>
<td width="50%" align="center" valign="middle">
Name: '.$res[$key][Name].'<br>
Strasse: '.$res[$key][Strasse].'<br>
Ort: '.$res[$key][PLZ].' '.$res[$key][Ort].'<br>
</td>
<td width=50% valign=middle>
'.$res[$key][Zweck].'<br><br>
Treffer: '.implode(', ',$subres[$key]).'
</td>
</tr>';
}

$ausgabe .= '</table>';
Die if-Abfrage würde ich gern in die Ausgabe mit rein nehmen.
Leider funktioniert das nicht. Ich erhalte dann folgende Fehlermeldung:
Parse error: parse error, unexpected T_IF in ...
Hat vielleicht jem. eine Idee?

Indyk
16.06.2009, 09:48:30
Meine erste Idee ist folgende:
Du liest dir die PHP Tutorials die es gibt solange durch bist du alles verstanden hast ( :

Meine zweite:
In wiefern willst du das in die Ausgabe mit einbauen? Du hast da eine Tabelle am start, möchtest du die echos in die zeilen schreiben? oder vor der tabelle, nach der tabelle?

Es ist auch nicht ersichtlich wo die Tabelle in deinem Script anfängt, nur das ende ist zu sehen. Eine mögliche lösung wäre also:


$ausgabe .= '<tr>
<td width="50%" align="center" valign="middle">
Name: '.$res[$key][Name].'<br>
Strasse: '.$res[$key][Strasse].'<br>
Ort: '.$res[$key][PLZ].' '.$res[$key][Ort].'<br>
</td>
<td width=50% valign=middle>
'.$res[$key][Zweck].'<br><br>
Treffer: '.implode(', ',$subres[$key]).'
</td>
</tr>';
}

$ausgabe .= '</table>';
//Nach der Tabelle
if($res[$key][Name] == $res[$key][Verweisname]) {
$ausgabe.= "VErweisnamen ist identisch mit Namen";
} else {
$ausgabe.= "Verweisname nicht identisch mit Namen";
}


Ach und der Fehler den du bekommst, besagt nur das du einen Syntax-Fehler produziert hast.

feuervogel
16.06.2009, 14:23:55
Hallo,

Die if-Abfrage würde ich gern in die Ausgabe mit rein nehmen.
Leider funktioniert das nicht. Ich erhalte dann folgende Fehlermeldung:
Parse error: parse error, unexpected T_IF in ...
Hat vielleicht jem. eine Idee?

wie sollen wir dir sagen was falsch ist, wenn du uns deinen fehlerhaften code verheimlichst?

consch
17.06.2009, 00:04:18
Sorry, hatte das übersehen mit der vollständigen Tabelle ;)
$ausgabe .= '<table width="60%" frame="below" align="center>"';
foreach ($res as $key => $value) {
$ausgabe .= '<tr>
<td width="50%" align="center" valign="middle">
Name: '.$res[$key][Name].'<br>
Strasse: '.$res[$key][Strasse].'<br>
Ort: '.$res[$key][PLZ].' '.$res[$key][Ort].'<br>
</td>
<td width=50% valign=middle>
'.$res[$key][Zweck].'<br><br>
Treffer: '.implode(', ',$subres[$key]).'
</td>
</tr>';
}

$ausgabe .= '</table>';

Ich möchte gern den Verweisnamen unter den Ort haben, aber nur wenn name=verweisname.
Dachte an:

$ausgabe .= '<table width="60%" frame="below" align="center>"';
foreach ($res as $key => $value) {
$ausgabe .= '<tr>
<td width="50%" align="center" valign="middle">
Name: '.$res[$key][Name].'<br>
Strasse: '.$res[$key][Strasse].'<br>
Ort: '.$res[$key][PLZ].' '.$res[$key][Ort].'<br>'
if($res[$key][Name] == $res[$key][Verweisname]) {
'Verweisname: '.$res[$key][Verweisname].'<br>
'} else {
keine Ausgabe
}'
</td>
<td width=50% valign=middle>
'.$res[$key][Zweck].'<br><br>
Treffer: '.implode(', ',$subres[$key]).'
</td>
</tr>';
}

$ausgabe .= '</table>';


Fehlermeldung: Parse error: parse error, unexpected T_IF in C:\Programme\xampp\htdocs\stiftungssuche\15.06.09\search.php on line 161
Folgende Zeile betrifft es: if($res[$key][Name] == $res[$key][Verweisname]) {

DokuLeseHemmung
17.06.2009, 00:58:31
Du kannst kein if in einer Stringverkettung platzieren.
Also machs vorher, oder verwende den trinitäts Operator.

consch
17.06.2009, 01:53:04
Okay, Danke.
Dann werde ich das so machen.