2016-07-09 5 views
0

ich diese verwenden, meine Tabelle mit Zeilen zeigen:PHP nicht gezeigt mehr Zeilen

Es zeigt nur eine Zeile, aber ich habe über 300rows in mysql.

Ich weiß nicht, was das Problem ist? Kann mir jemand helfen?

Ich habe versucht, diesen Code zu verwenden:

while($dnn = mysql_fetch_array($query, MYSQL_ASSOC)) { 
$hour = $dnn['BanH']; $day = $dnn['BanD']; $month = $dnn['BanM']; $year = $dnn['BanY']; 
$uhour = $dnn['UnbanH']; $uday = $dnn['UnbanD']; $umonth = $dnn['UnbanM']; $uyear = $dnn['UnbanY']; 
$yaro = $dnn['Name']; $dalil = $dnn['Reason']; $bokon = $dnn['Admin']; 

if($dnn['Days'] == 0) { 
     $bantime = "Never <font color=red>(Banned Permanently)</font>"; 
} 
else { 
     $bantime = "$uday/$umonth/$uyear, $uhour:00"; 
} 

$banlist = "<tr><td class=\"trow1\" align=\"center\"><a href=User-{$yaro}><font color=white>{$yaro}</a></font></td> 
<td class=\"trow1\" align=\"center\">{$day}/{$month}/{$year}, {$hour}:00</td> 
<td class=\"trow1\" align=\"center\">{$bantime}</td> 
<td class=\"trow1\" align=\"center\">{$dalil}</td> 
<td class=\"trow1\" align=\"center\">{$bokon}</td> 
</tr>"; 
} 
if($banlist == '') 
{ 
     $banlist = '<tr><td colspan="5">'.$lang->no_banned.'</td></tr>'; 
} 
$bans .= $banlist; 

$page = " 
<html> 
<head> 
<title>Banned Users List</title> 
{$headerinclude} 
</head> 
<body> 
{$header} 
<br /> 
<table border=0 cellspacing={$theme['borderwidth']} cellpadding={$theme['tablespace']} class=tborder> 
<tr> 
<td class=thead colspan=5><span class=smalltext><strong>Banned Users List</strong></span></td> 
</tr> 
<tr> 
<td class=tcat align=center>Player</td> 
<td class=tcat align=center>Ban Date</td> 
<td class=tcat align=center>Unban Date</td> 
<td class=tcat align=center>Ban Reason</td> 
<td class=tcat align=center>Banned By</td> 
</tr> 
{$bans} 
</tbody></table> 

{$footer} 
</body> 
</html>"; 
output_page($page); 

i http://php.net/manual/en/function.mysql-fetch-array.php Beispiele zu verwenden versucht. ** Sorry für mein schlechtes Englisch.

+0

Verwendung Mysqli statt mysql in Ihre Codes. – yafater

+0

erhalten Sie irgendwelche Fehler ?? – yafater

+0

teilen Sie Ihre SQL-Abfrage. –

Antwort

0

Sie machen es falsch. Innerhalb der Schleife wird jedes Mal der Wert banlist überschrieben - Sie erhalten also nur den Wert der letzten Zeile.

Sie müssen wie dies tun:

$banlist = ''; 
while($dnn = mysql_fetch_array($query, MYSQL_ASSOC)) { 
$hour = $dnn['BanH']; $day = $dnn['BanD']; $month = $dnn['BanM']; $year = $dnn['BanY']; 
$uhour = $dnn['UnbanH']; $uday = $dnn['UnbanD']; $umonth = $dnn['UnbanM']; $uyear = $dnn['UnbanY']; 
$yaro = $dnn['Name']; $dalil = $dnn['Reason']; $bokon = $dnn['Admin']; 

if($dnn['Days'] == 0) { 
     $bantime = "Never <font color=red>(Banned Permanently)</font>"; 
} 
else { 
     $bantime = "$uday/$umonth/$uyear, $uhour:00"; 
} 

$banlist .= "<tr><td class=\"trow1\" align=\"center\"><a href=User-{$yaro}><font color=white>{$yaro}</a></font></td> 
<td class=\"trow1\" align=\"center\">{$day}/{$month}/{$year}, {$hour}:00</td> 
<td class=\"trow1\" align=\"center\">{$bantime}</td> 
<td class=\"trow1\" align=\"center\">{$dalil}</td> 
<td class=\"trow1\" align=\"center\">{$bokon}</td> 
</tr>"; 
} 
+0

zeigt jetzt keine Zeile mehr an. –

+0

nachdem die Schleife beendet ist, was gibt 'var_dump ($ banlist)' zurück? –

+0

Zeichenfolge (303) "Getestet 07.07.2016, 14:00 17.7.2016, 14:00 Test Testor" –