龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > web编程 > php编程 >

php 一条SQL语句更新多条记录

时间:2014-07-20 15:56来源:网络整理 作者:网络 点击:
分享到:
一条SQL语句更新多条记录 从表单获取两个数组, 一是要更新字段数据 , 另一个是条件数组, 我这里用id[代码片段(17行)]

从表单获取两个数组, 一是要更新字段数据 , 另一个是条件数组, 我这里用id

function save_category_district($parame,$id){
    if(!is_array($parame) || !is_array($id)) return false;
    $sql="UPDATE ".table.'category_district'.' SET ';
    foreach($parame as $key=>$val){
        $csql.=$key.'=CASE id';
        foreach($parame[$key] as $key=>$val){
            $csql.=" WHEN {$id[$key]} THEN '{$val}'"; //注意这里id的key必须和要更新数据的key相同,就是表单里出来的数字键
        }
        $csql.=' END,';
    }
    $sql.=rtrim($csql,','); //这一步就是为了去除最后一个END后的逗号
    $id=implode(',',$id);  //id在这里变为字符串
    $sql.=" WHERE id IN ({$id})";
    if(!$this->mydb->query($sql)) return false;
    return true;
}
//该片段来自于http://outofmemory.cn
精彩图集

赞助商链接