为了账号安全,请及时绑定邮箱和手机立即绑定

正在回答

2 回答

根据你的需求,我写了个差不多。 你可以参考下。

function update($table, $array = array(), $where){
    if(empty($array) || !is_array($array) || empty($where)){
	   return false;
	}
	$set_arr = array();
	foreach ($array as $field => $value) {
		$set_str = "`{$field}`";
		if(is_numeric($value)){
			$set_str .= "={$value}";
		}else{
			$set_str .= "='{$value}'";
		}
		$set_arr[] = $set_str;
	}
	$set_str = implode(",", $set_arr);
	$sql = "UPDATE {$table} SET {$set_str} WHERE {$where}";
    $result = mysql_query($sql);
    
    if($result){
        return mysql_affected_rows();
    }else{
        return false;
    }
}

//演示
//连接数据库
mysql_connect('localhost', 'root', 'root');
mysql_select_db('mooc');
mysql_query("set names utf8");

//要修改的字段和值
$data = array();
$data['name'] = 'geek';
$data['age'] = 22;


0 回复 有任何疑惑可以回复我~
#1

陈校军

//条件 默认更改所有地方 $where = "1=1"; //调用 $result = update('problem', $data, $where); var_dump($result);
2015-05-20 回复 有任何疑惑可以回复我~

 同学,你36行的$str是怎么来的? 

 你写这个应该是想判断用户修改的是单一字段还是多个字段吧,  建议你先初始化一个$str = '',  然后在if里面判断一下$array的类型和长度。

0 回复 有任何疑惑可以回复我~
#1

wxx 提问者

可是在外面写了$str的初始还是有问题
2015-05-20 回复 有任何疑惑可以回复我~
#2

陈校军

你把代码贴上来,我看下。 不要截图…
2015-05-20 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
手把手教你实现电商网站后台开发
  • 参与学习       117284    人
  • 解答问题       1999    个

手把手教你用PHP搭建电子商务平台,由浅入深教你搭建电商系统

进入课程

为何会这样呢

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信