我尝试使用mysql fetch数组从表获取所有数据然后更新。 我使用我的代码来做到这一点,它正常工作,但一个接一个。 我需要同时更新每10个结果,然后是其他10个结果直到结束。
我的代码是
$get_urls = mysql_query("select * from urls where (status = 'active') ORDER BY number ASC");
while($show_url = mysql_fetch_array($get_urls, MYSQL_NUM)) {
$urlid = $show_url['0'];
$edit_urls = "UPDATE urls SET online = 'yes' WHERE urlid = '$urlid'";
mysql_query($edit_urls);
}
mysql_free_result($get_urls);
答案 0 :(得分:0)
您可以使用array
& implode
实现此目标
$array = array();
$get_urls = mysql_query("select * from urls where (status = 'active') ORDER BY number ASC");
while($show_url = mysql_fetch_array($get_urls, MYSQL_NUM))
$array[] = $show_url['0'];
$edit_urls = "UPDATE urls SET online = 'yes' WHERE urlid IN (".implode(',',$array).")";
mysql_query($edit_urls);
答案 1 :(得分:0)
使用array_chunk
$input_array = array('a', 'b', 'c', 'd');
print_r(array_chunk($input_array, 2));
//output
Array
(
[0] => Array
(
[0] => a
[1] => b
)
[1] => Array
(
[0] => c
[1] => d
)
)
array_chunk($data,10);
foreach ($data as $key => $value){
// excute your sql query update.
希望得到这个帮助。