首頁 >後端開發 >php教程 >查询指定数量的记录,批量修改mysql字段。

查询指定数量的记录,批量修改mysql字段。

WBOY
WBOY原創
2016-06-20 12:44:121123瀏覽

我需要查询 " . $GLOBALS['ecs']->table('user_card') . " 表里的 card_no字段里是否有 $model内容,指定修改条数后执行修改。


if ($_REQUEST['act'] == 'model'){
$model_id = $_POST['model']; //获取提交过来的产品型号
$number = $_POST['number'];  //获取需要修改数量
$startymd = $_POST['startymd']; //获取需要写入的日期

/*  //这段代码应该写错的了,我都不知道怎么写了,怎么循环。
$card_null = mysql_query ( "SELECT id FROM " . $GLOBALS['ecs']->table('user_card') . " WHERE `enable` = '0' AND `card_no` LIKE '%$model_id%' order by id ASC limit " . $number);
foreach (mysql_fetch_array($card_null) as $result) {
if($result['id']) {
$db -> query("UPDATE ".$GLOBALS['ecs']->table('user_card')." SET `date`=".$startymd.",`enable`=1 WHERE `id`= ".$result['id']);

} else {
echo '积分卡不够用,请导入后继续!';
}
}
*/
}


回复讨论(解决方案)

while($result = mysql_fetch_array($card_null)) {if($result['id']) {$db -> query("UPDATE ".$GLOBALS['ecs']->table('user_card')." SET `date`=".$startymd.",`enable`=1 WHERE `id`= ".$result['id']);} else {echo '积分卡不够用,请导入后继续!';}}

可以实现批量修改了,

$card_null = mysql_query( "SELECT id FROM " . $GLOBALS['ecs']->table('user_card') . " WHERE `enable` = '0' AND `card_no` LIKE '%$model_id%' order by id ASC limit " . $number);
while($result = mysql_fetch_array($card_null)) {
if($result['id']) {
$db -> query("UPDATE ".$GLOBALS['ecs']->table('user_card')." SET `enable_time`='$time',`date`='$startymd',`enable`=1 WHERE `id`= ".$result['id']);
echo '操作成功';
} else {
echo '积分卡不够用,请导入后继续!';exit;
}
}

怎样改成当$card_null没有查询到数据后输出 echo "积分卡不够用"

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn