>백엔드 개발 >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으로 문의하세요.