重複の可能性:
PHP/MySQL - SQL 構文エラー?
以下のスクリプトを使用してユーザー パスワードを更新しようとしていますが、次のエラーが表示されます。私はPHPとMySQLを約2か月しか使用していないので、まだ初心者なので、以下のコードに関するコメントをいただければ幸いです. よろしくお願いいたします。
SQL 構文にエラーがあります。使用する正しい構文については、MySQL サーバーのバージョンに対応するマニュアルを確認してください。
<?php
//Pull in form info
$pass1 = $_POST['pass1'];
$pass2 = $_POST['pass2'];
//Chrck if the 2 password fields match
if($pass1 != $pass2) {
header('Location: ../admin/pass-change.php?pw=notmatched');
die();
}
//encrypts the password
$hash = hash('sha256', $pass1);
//creates a 3 character sequence
function createSalt()
{
$string = md5(uniqid(rand(), true));
return substr($string, 0, 3);
}
$salt = createSalt();
$hash = hash('sha256', $salt . $hash);
//initialise connection with databse
require_once('../Connections/EliteGrooming.php');
mysql_select_db($database_EliteGrooming, $EliteGrooming);
//Execute the query
$username = $_SESSION['username'];
$query = "UPDATE admin_users (password, salt)
VALUES ( '$hash', '$salt' )
WHERE username = '$username';";
mysql_query($query) or die(mysql_error());;
mysql_close();
header('Location: ../admin/pass-change.php?PassChanged');
?>