我最近一直在使用PHP,但不太了解。PHP选择特定行
现在我试图从一行中获取所有信息。这是我到目前为止:
$server = mysql_query("SELECT * FROM servers;");
$serverFinal = mysql_fetch_row($server);
这是行得通的,但只要我有超过1行的表,它只是不断给我第一行。 这是全码:
<?php
include "C:/wamp/www/minebook/mysql/info.php";
$db_database = 'minebook_servers';
mysql_connect($db_host, $db_user, $db_pass);
mysql_select_db($db_database);
$result = mysql_fetch_array(mysql_query("SELECT COUNT(*) as count FROM servers"));
$f = 1;
while ($f <= $result['count']) {
$server = mysql_query("SELECT * FROM servers;");
$serverFinal = mysql_fetch_row($server);
$response = $status->getStatus("$serverFinal[1]", $serverFinal[2]);
if(!$response) {
echo '
<tbody>
<tr>
<td class="mname">'.$serverFinal[0].'</td>
<td class="mserver">OFFLINE</td>
<td class="mstatus">OFFLINE</td>
</tr>
</tbody>
';
} else {
echo '
<tbody>
<tr>
<td class="mname">
'.$serverFinal[0].' '.$serverFinal[1].' '.$serverFinal[2].'
</td>
<td class="mserver">
<img class="theadImage" border="0" src="/minebook/pictures/d_helmet.png" alt="Name" width="22" height="18">
'.$response['players'].'/'.$response['maxplayers'].'
<img class="theadImage" border="0" src="/minebook/pictures/grass.png" alt="Name" width="18" height="18">
'.$response['version'].'
</td>
<td class="mstatus">
ONLINE
</td>
</tr>
</tbody>
';
}
$f++;
}
?>
而且我知道我应该使用的mysqli。我正在尽快切换。
尝试使用“mysql_fetch_assoc”而不是“mysql_fetch_row” –
请使用'MySQLi_'而不是'MySQL_',或者更好地使用PDO。 'MySQL_'这个扩展在PHP 5.5.0以前不推荐使用,并且将来会被删除。 –
mysql_fetch_assoc使$ serverFinal [0]不可用并引发错误。而且我也知道MySQLi的事情,我很快就会把它切换。 – HeyAwesomePeople