我想更新MySQL数据库条目。为此,我使用的是PHP表单。我以数组的形式输入数据(字段名作为键,数据作为值),以及要编辑的条目的id。但是如何使用数组更新条目?
我使用类似的数组通过使用以下代码插入新条目 -
array_walk($register_data, 'array_sanitize');
$register_data['password'] = md5($register_data['password']);
$fields = '`' . implode('`, `', array_keys($register_data)) . '`';
$data = '\'' . implode('\', \'', $register_data) . '\'';
mysql_query("INSERT INTO `users` ($fields) VALUES ($data)");
但是如何更新现有行?
答案 0 :(得分:1)
请尝试以下方法: -
$arr = array('name' => 'kh', 'phone' => 23456);
$s = "UPDATE table_name SET ";
foreach($arr as $k => $v){
$s .= $k."='". $v."', ";
}
$s = rtrim($s, ", ");
$s .= " where id = 1";
echo $s;
输出将是: -
UPDATE table_name SET name =' kh',phone =' 23456'其中id = 1
答案 1 :(得分:0)
使用UPDATE查询,
UPDATE(表名)设置(字段名称)=(新值)其中(您的条件)。
或
UPDATE table_name SET column1 = value1,column2 = value2,... some_column = some_value;
答案 2 :(得分:0)
$userData = array();
foreach ($userList as $user) {
$userData[] = '("' . $user['first_name'] . '", "' . $user['last_name'] . '")';
}
$query = 'INSERT INTO users (first_name,last_name) VALUES' . implode(',', $userData);
mysql_query($query);
您也可以为$ fields执行此操作。