If-Anweisung reagiert nicht
Diamo
- php
0 wahsaga0 Diamo0 Tobias Kloth0 diamo
Guten Tag,
ich hab mir ein Script programmiert, das Informationen aus einer Datei ausliest und dann als Bild und Text ausgibt. Dies funktioniert ja wunderbar. Mein Problem ist aber, dass er garkeine Bilder mehr anzeigt, wenn ich die If-Anweisung einfüge.
Link zur Datei: http://www.styleworker.de/koala/uploads/info.txt
Link zur Seite: http://www.styleworker.de/koala/?link=content_pics
Quellcode:
<table width="100%" border="0" cellspacing="5" cellpadding="0">
<tr align="center">
<?php
$datei = file("uploads/info.txt");
for ($i=0;$i<count($datei);$i++) {
$split[$i] = explode("#",$datei[$i]);
echo $split[$i][2];
if ($array[$i][2]=="pics")
{
echo "<td valign='top' align='center' class='copytext'><a href=uploads/pics/".$split[$i][0]." target=_blank><img src=uploads/pics/". $split[$i][0] ." height=100 width=150 border=0></a><br>". $split[$i][1] ."</td>";
if ((($i + 1) % 3 == 0) && ($i != 0)) echo"</tr><tr>";
}}
?>
<td colspan=3></td>
</tr>
</table>
hi,
Mein Problem ist aber, dass er garkeine Bilder mehr anzeigt, wenn ich die If-Anweisung einfüge.
if ($array[$i][2]=="pics")
du hast an dieser stelle kontrollausgaben der werte eingebaut, um zu überprüfen, ob überhaupt ein element den wert "pics" hat ...?
nein, hast du nicht - sonst wäre dir nämlich aufgefallen, dass file() den zeilenumbruch hinter den zeilen am stringende stehen lässt, so dass "pics\n" in den elementen stehen dürfte, und nicht "pics".
gruss,
wahsaga
Also habe das so probiert, aber es funktioniert auch nicht.
Hallo Diamo,
Also habe das so probiert, aber es funktioniert auch nicht.
was hast du genau probier? Wie sieht den Code jetzt aus? Was gibt ein echo $array[$i][2]; aus? (in den Quelltext schauen, nicht das was der Browser anzeigt). Hast du mal versucht die Zeilenumbrüche vor dem if z.B. mit trim() (->http://www.php.net/trim) zu entfernen?
Grüße aus Nürnberg
Tobias
Super funktioniert jetzt ! Doch leider zeigt er die Tabelle nicht mehr richtig an. Er sollte normal 3 Bilder pro Zeile anzeigen.
Was stimmt da nicht ?
Link: http://www.styleworker.de/koala/?link=content_pics
<table width="100%" border="0" cellspacing="5" cellpadding="0">
<tr align="center">
<?php
$datei = file("uploads/info.txt");
for ($i=0;$i<count($datei);$i++) {
$split[$i] = explode("#",$datei[$i]);
if (trim ($split[$i][2])=="pics"){
echo "<td valign='top' align='center' class='copytext'><a href=uploads/".trim ($split[$i][2])."/".$split[$i][0]." target=_blank><img src=uploads/".trim ($split[$i][2])."/". $split[$i][0] ." height=100 width=150 border=0></a><br>". $split[$i][1] ."</td>";
if ((($i + 1) % 3 == 0) && ($i != 0)) echo"</tr><tr>";
}}
?>
</tr>
</table>