Mysql Can';t更新/更改数据库中的字段值
理论上,我将向您展示有效的代码,我的意思是,它是有意义的,但我无法在表中获得任何更改!:\ 下面是代码:Mysql Can';t更新/更改数据库中的字段值,mysql,database,sql-update,Mysql,Database,Sql Update,理论上,我将向您展示有效的代码,我的意思是,它是有意义的,但我无法在表中获得任何更改!:\ 下面是代码: else if ($mode == 'password') { $generated_password = substr(md5(rand(999,999999)), 0, 8); change_password($user_data['user_id'],$generated_password); update_user($user_data['u
else if ($mode == 'password') {
$generated_password = substr(md5(rand(999,999999)), 0, 8);
change_password($user_data['user_id'],$generated_password);
update_user($user_data['user_id'], array('password_recover' => '1'));
email($email, 'Your new password', "Hi," . $user_data['nome'] . " \n\nYour new password is: " . $generated_password . "");
}
职能:
function update_user($user_id,$update_data){
$update = array();
array_walk($update_data, 'array_sanitize');
foreach($update_data as $field => $data) {
$update[]='`' .$field. '`=\'' .$data . '\'';
}
mysql_query("UPDATE users SET " . implode(', ',$update) . "WHERE user_id = '$user_id'");
}
function change_password($user_id,$password) {
$user_id = (int) $user_id;
$password = md5($password);
mysql_query("UPDATE users SET password = '$password' WHERE user_id = $user_id");
}
我甚至没有写过电子邮件功能,因为它可以工作。提前感谢!:) 您应该在代码中添加某种错误处理。至少在每个
mysql\u query()
之后添加或die('Error:'.mysql\u Error())
,以便至少了解执行查询时出现的错误
如果您只是从某个地方获取代码,但并不真正理解它的功能,那么如果它没有实现您希望它实现的功能,请不要感到惊讶