Heim >Backend-Entwicklung >PHP-Tutorial >PHP问题求助,请大神帮忙。
//refresh function//refresh item statusfunction refresh(){ $problem = false; $result = mysql_query("SELECT ITEM_ID FROM ITEM WHERE END > NOW() AND STATUS != 'SOLD'"); if($result) { while ($row = mysql_fetch_array($result)) { $act_id = $row['ITEM_ID']; mysql_query("UPDATE ITEM SET STATUS = 'ACTIVE' WHERE ITEM_ID = $act_id"); } $result = mysql_query("SELECT ITEM_ID, WINNER_ID, END FROM ITEM WHERE END <= NOW() AND STATUS != 'SOLD'"); if($result) { while ($row = mysql_fetch_array($result)) { $exp_id = $row['ITEM_ID']; $win_id = $row['WINNER_ID']; $time = $row['END']; // Error here. There is only one row has been displayed. There should be 4 rows actully. // Result: 7 0 2013-04-14 00:00:00 echo $exp_id."<br>"; echo $win_id."<br>"; echo $time."<br>"; if($win_id == 0) { mysql_query("UPDATE ITEM SET STATUS = 'EXPIRE' WHERE ITEM_ID = $exp_id"); } else { mysql_query("UPDATE ITEM SET STATUS = 'SOLD' WHERE ITEM_ID = $exp_id"); echo "INSERT INTO ITEM_SOLD VALUES($exp_id,$win_id,'".$time."','N')"; mysql_query("INSERT INTO ITEM_SOLD VALUES($exp_id,$win_id,'".$time."','N')"); } } $result = mysql_query("SELECT ITEM_ID FROM ITEM WHERE BEGIN > NOW() AND STATUS != 'SOLD'"); if($result) { while ($row = mysql_fetch_array($result)) { $na_id = $row['ITEM_ID']; mysql_query("UPDATE ITEM SET STATUS = 'NA' WHERE ITEM_ID = $na_id"); } } else { $problem = true; } } else { $problem = true; } } else { $problem = true; } if($problem) { print '<p class = "error">Cannot refresh active item.</p>'; }}
mysql_fetch_array() 函数从结果集中取得一行作为关联数组,或数字数组,或二者兼有 on the line 21 of you code
mysql_fetch_array() 函数从结果集中取得一行作为关联数组,或数字数组,或二者兼有 on the line 21 of you code
I don't quite understand... Any suggested solution?
(I don't have chinese input software on this computer, sorry about that...)
i mean the function mysql_fetch_array() just return one row result
u use the funciton function mysql_fetch_array() in the code on 21 line has a error ...
mysql_fetch_array ? Fetch a result row as an associative array, a numeric array, or both
http://www.php.net/manual/en/function.mysql-fetch-array.php
u use the funciton function mysql_fetch_array() in the code on 21 line has a error ...
mysql_fetch_array ? Fetch a result row as an associative array, a numeric array, or both
http://www.php.net/manual/en/function.mysql-fetch-array.php
Thanks for taking time to answer my question. But I am new to php and mySQL, I cannot solve this myself.
Can you just simply give me a solution?
i mean the function mysql_fetch_array() just return one row result
I am so sorry!
Something is wrong in my database connection header file...
I choosed the wrong database. Now it is fixed.
i mean the function mysql_fetch_array() just return one row result
I am so sorry!
Something is wrong in my database connection header file...
I choosed the wrong database. Now it is fixed.
congratulation