php不更新sql数据库
你好,我正在运行一个服务器端数据库来处理来自android手机的输入。我有两个功能,一个用于存储用户信息,另一个用于更新用户位置 第二个去商店的位置我不能去上班php不更新sql数据库,php,sql,sql-update,Php,Sql,Sql Update,你好,我正在运行一个服务器端数据库来处理来自android手机的输入。我有两个功能,一个用于存储用户信息,另一个用于更新用户位置 第二个去商店的位置我不能去上班 /** * Storing new user * returns user details */ public function storeUser($name, $email, $password) { $uuid = uniqid('', true); $hash = $this->hashSSHA
/**
* Storing new user
* returns user details
*/
public function storeUser($name, $email, $password) {
$uuid = uniqid('', true);
$hash = $this->hashSSHA($password);
$encrypted_password = $hash["encrypted"]; // encrypted password
$salt = $hash["salt"]; // salt
$result = mysql_query("INSERT INTO users(unique_id, name, email, encrypted_password, salt, created_at) VALUES('$uuid', '$name', '$email', '$encrypted_password', '$salt', NOW())");
// check for successful store
if ($result) {
// get user details
$uid = mysql_insert_id(); // last inserted id
$result = mysql_query("SELECT * FROM users WHERE uid = $uid");
// return user details
return mysql_fetch_array($result);
} else {
return false;
}
}
/**
* Updating a users
* location
*/
public function updateLocation($email, $location) {
$uuid = uniqid('', true);
$result = mysql_query("UPDATE users SET location='$location' WHERE email='$email' NOW())");
// check for successful store
if ($result) {
// get user details
$uid = mysql_insert_id(); // last inserted id
$result = mysql_query("SELECT * FROM users WHERE email = $email");
// return user details
return mysql_fetch_array($result);
} else {
return false;
}
}
非常感谢您的帮助
谢谢似乎您有一个错误:“
WHERE email='$email'NOW())
”进入“created_at='NOW()”WHERE email='$email'”在查看更新查询时,SQL的末尾有一个额外的NOW()”“$result=mysql\u查询(“更新用户设置位置='location'WHERE email='$email'NOW()”)”代码>您似乎缺少它的一部分。您需要告诉它需要设置为NOW()的内容,可能在更新时更新,“UPDATE users set location='$location',updated_at=NOW(),其中email='$email'
在尝试将这些变量插入数据库之前,您是否使用mysql\u real\u escape
清理这些变量?这是一种极其危险的代码编写方式。我强烈建议您使用这样的数据库抽象层,谢谢您的建议。我肯定会在将来研究抽象层,但目前它不在本项目的范围之内。