Я знаю, что такие вопросы были заданы раньше, и я просмотрел эти темы и по-прежнему не могу найти ошибку в моем синтаксисе, поэтому я повернул публиковать мои собственные.У вас есть ошибка в синтаксисе SQL (mySQL)
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'INSERT_INTO users (uid,email,pass_hash,permissions,join_date) VALUES ('wright.ma' at line 1)
Мой код приведен ниже, но все остальное работает до SQL, который представляется мне действительным.
$email = $_POST['email'];
$pass = $_POST['pass'];
$pass2 = $_POST['pass2'];
$uid = $_POST['uid'];
$join_date = date("Y-m-d H:i:s");
if ($_POST['permissions']) { $permissions = $_POST['permissions']; } else { $permissions = 0; }
if (!$email) {
header('HTTP/1.1 500 Internal Server Error');
header('Content-Type: application/json');
exit("Security Module Error - Email address not provided");
}
if (!$uid) {
header('HTTP/1.1 500 Internal Server Error');
header('Content-Type: application/json');
exit("Security Module Error - User ID not provided");
}
if (!$pass || !$pass2 || ($pass != $pass2)) {
header('HTTP/1.1 500 Internal Server Error');
header('Content-Type: application/json');
exit("Security Module Error - Password not provided or doesn't match");
}
$pass_hash = crypt($pass,'$1$$hash$1');
$conn = @mysql_connect("localhost","root","root");
if (!$conn) {
header('HTTP/1.1 500 Internal Server Error');
header('Content-Type: application/json');
exit("Database Error - Unable to Connect");
}
$db = @mysql_select_db("start", $conn);
if (!$db) {
header('HTTP/1.1 500 Internal Server Error');
header('Content-Type: application/json');
exit("Database Error - Unable to Access Database");
}
$result = @mysql_query("INSERT_INTO users (uid,email,pass_hash,permissions,join_date) VALUES ('$uid','$email','$pass_hash','$permissions',$join_date)");
if (!$result) {
header('HTTP/1.1 500 Internal Server Error');
header('Content-Type: application/json');
exit("Database Error - Unable to Create Record (".mysql_error($conn).")");
}
$row = mysql_fetch_array($result);
if (!$row) {
header('HTTP/1.1 500 Internal Server Error');
header('Content-Type: application/json');
exit("Security Module Error - Unable to Authenticate Record Creation");
} else {
$_SESSION['uid'] = $row['uid'];
$_SESSION['permissions'] = $row['permissions'];
$_SESSION['email'] = $row['email'];
}
Второй комплект глаз, желающих помочь, был бы очень благодарен!
будет делать, спасибо! Теперь я получаю сообщение об ошибке в другом месте: около '20: 02: 34) 'в строке 1) Кажется, что это что-то связано с моей вставкой join_date, которая является DATETIME в моей базе данных. Я думал, что у меня для этого правильный формат, но выглядит ли он правильно? –
Вам нужны котировки вокруг значений даты. – Robbert