Grunge
Erfahrenes Mitglied
Hey Leute...total simples beispiel doch dieses bißchen PHP bringt meine ganze Seite durcheinander.
ALSO. . .
Es ist wie folgt: In einer Liste sollen alle User angezeigt werden, die momentan "online" sind. Funktioniert im übrigen einwandfrei. Danach soll jedes gefundene Datenbankeintrag verwendet werden, um das entsprechende Foto dieses Users zu laden. Doch das macht mein Script eben nicht. Ich hab die Seite schritt für schritt auskommentiert um den Fehler zu finden. Und ich habe ihn, weiß nur nicht wieso das falsch ist.
Schaut selbst:
Die Funktion, die ich nur formuliert habe, weil ich dachte es bringe was sieht so aus:
die Zeile die Probleme macht, ist folgende:
Denn dann funktioniert alles. Zwar gibts kein Foto, aber immerhin wird die Seite richtig zu Ende aufgebaut und die Liste wird mit Werten gefüllt. Ich denke mal dass es nicht ausschließlich an dieser einen Zeile liegt, denn die scheint ja richtig zu sein, aber hoffe das ihr nen Grund kennt. Jedenfalls wenn ich die Zeile auskommentiere/lösche, gibt es keine Probleme. . . Fehlermeldungen kommen nicht. . .
BESTEN DANK IM VORRAUS
Ben
ALSO. . .
Es ist wie folgt: In einer Liste sollen alle User angezeigt werden, die momentan "online" sind. Funktioniert im übrigen einwandfrei. Danach soll jedes gefundene Datenbankeintrag verwendet werden, um das entsprechende Foto dieses Users zu laden. Doch das macht mein Script eben nicht. Ich hab die Seite schritt für schritt auskommentiert um den Fehler zu finden. Und ich habe ihn, weiß nur nicht wieso das falsch ist.
Schaut selbst:
PHP:
<select onchange="document.getElementById('imgID').src=this.options[this.selectedIndex].value;" style="height:190px; font:Verdana, Arial, Helvetica, sans-serif; font-size:12px; color:#FFFFFF; width:100%; background-color:#a3915a; border:none; " name="select" size="10" id="select">
<?
//Einträge bearbeiten
$query = "
SELECT
`online_user`
FROM
`g2g_online`
WHERE
UNIX_TIMESTAMP(NOW()) - UNIX_TIMESTAMP(`online_time`) <= 180 ORDER BY online_user ASC ";
$onr=mysql_query($query) or die(mysql_error());
while($row=mysql_fetch_assoc($onr)){
$user=$row['online_user'];
echo " <option value=\"".imageGet($user)."\">".$user."</option>";
}
?>
</select>
Die Funktion, die ich nur formuliert habe, weil ich dachte es bringe was sieht so aus:
PHP:
function imageGet($nick)
{
$img="SELECT * FROM g2g_user_images WHERE nick='".$nick."' AND standard='1'";
$result=mysql_query($sql) or die(mysql_error());
if(mysql_num_rows($result)==0){
return $img="user_images/no_img.jpg";
}else{
$img=mysql_fetch_assoc($result);
return $img=$img['img'];
}
}
die Zeile die Probleme macht, ist folgende:
PHP:
$result=mysql_query($sql) or die(mysql_error());
Denn dann funktioniert alles. Zwar gibts kein Foto, aber immerhin wird die Seite richtig zu Ende aufgebaut und die Liste wird mit Werten gefüllt. Ich denke mal dass es nicht ausschließlich an dieser einen Zeile liegt, denn die scheint ja richtig zu sein, aber hoffe das ihr nen Grund kennt. Jedenfalls wenn ich die Zeile auskommentiere/lösche, gibt es keine Probleme. . . Fehlermeldungen kommen nicht. . .
BESTEN DANK IM VORRAUS
Ben