为什么我的PHP代码不能更新SQL
发布时间:2020-12-13 17:26:06 所属栏目:PHP教程 来源:网络整理
导读:有谁知道为什么这个 PHP代码没有更新列imagesit将更新其余的,但只是不是图片列更新用户信息所以电子邮件地址,密码和图片我是PHP的新手,所以我真的不我正在寻找错误时知道要寻找什么 ?php require("common.php"); if(empty($_SESSION['user'])) { header("Loc
有谁知道为什么这个
PHP代码没有更新列imagesit将更新其余的,但只是不是图片列更新用户信息所以电子邮件地址,密码和图片我是PHP的新手,所以我真的不我正在寻找错误时知道要寻找什么
<?php require("common.php"); if(empty($_SESSION['user'])) { header("Location: login.php"); die("Redirecting to login.php"); } if(!empty($_POST)) { if(!filter_var($_POST['email'],FILTER_VALIDATE_EMAIL)) { die("Invalid E-Mail Address"); } if($_POST['email'] != $_SESSION['user']['email']['picture']) { $query = " SELECT 1 FROM users WHERE email = :email picture = :picture "; $query_params = array( ':email' => $_POST['email'] ); try { $stmt = $db->prepare($query); $result = $stmt->execute($query_params); } catch(PDOException $ex) { die("Failed to run query: " . $ex->getMessage()); } $row = $stmt->fetch(); if($row) { die("This E-Mail address is already in use"); } } if(!empty($_POST['password'])) { $salt = dechex(mt_rand(0,2147483647)) . dechex(mt_rand(0,2147483647)); $password = hash('sha256',$_POST['password'] . $salt); for($round = 0; $round < 65536; $round++) { $password = hash('sha256',$password . $salt); } } else { $password = null; $salt = null; } $query_params = array( ':email' => $_POST['email'],':user_id' => $_SESSION['user']['id'],':picture' => $_POST['picture'],); if($password !== null) { $query_params[':password'] = $password; $query_params[':salt'] = $salt; } $query = " UPDATE users SET email = :email picture = :picture "; if($password !== null) { $query .= ",password = :password,salt = :salt "; } $query .= " WHERE id = :user_id "; try { // Execute the query $stmt = $db->prepare($query); $result = $stmt->execute($query_params); } catch(PDOException $ex) { die("Failed to run query: " . $ex->getMessage()); } $_SESSION['user']['email']['picture'] = $_POST['email']; header("Location: private.php"); die("Redirecting to private.php"); } ?> 解决方法
你错过了,.
$query = " UPDATE users SET email = :email picture = :picture "; 您需要将其更改为 $query = " UPDATE users SET email = :email,picture = :picture "; (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |