2010-07-24 96 views
0
$r = mysql_query ("SELECT guid FROM characters"); 
if (mysql_num_rows($r) != 0) { 
    while ($row == mysql_fetch_array ($r)) { 
     $cap = rand (0, $char); 
     if ($row ['guid'] != $cap) { 
      $captain = rand (0, $char); 
     } 
    } 
} else { 
    $captain = rand (0, $char); 
} 

此代碼應該返回字符的GUID,它不會記錄在字符表中。第一部分,如果工作,但循環不工作,我試圖添加打印「文本」;在它裏面,但它沒有任何回報。雖然循環不起作用

回答

6

嘗試:

while ($row = mysql_fetch_array ($r)) 

你要設置$row等於mysql_fetch_array結果,而不是它

2

您正在使用==(比較)在while與之比較的結果,而不是=(平等)循環。

3

您在while循環中使用==。你應該使用=(賦值運算符)。也只是一個說明,你應該使用mysql_fetch_assoc而不是mysql_fetch_array。 mysql_fetch_array返回2x的信息(數據和數據的關聯版本)。