Синтаксическая ошибка MySQL: я застрял - PullRequest
3 голосов
/ 23 мая 2011
$queryStatus = mysql_query("INSERT into `database`.`users` (`first`, `last`, `pass`, `user`, `id`, `email`, `active`) VALUES ('$first', '$last', '$password', '$user', NULL, '$email', '0'") or die("BAD QUERY: " . mysql_error());

Поле идентификатора NULL, потому что это автоинкремент. Но это вызывает синтаксическую ошибку, и я действительно не могу понять, почему. Пожалуйста, помогите.

Ответы [ 3 ]

3 голосов
/ 23 мая 2011

Вы не закрываете часть запроса VALUES ().В конце должна быть закрывающая скобка - не путайте ее с закрывающей скобкой для вызова функции mysql_query.

3 голосов
/ 23 мая 2011

Игнорировать поле ID, оно автоматически вставит значение:

$queryStatus = mysql_query("INSERT into `database`.`users` (`first`, `last`, `pass`, `user`, `email`, `active`) VALUES ('$first', '$last', '$password', '$user', '$email', '0'") or die("BAD QUERY: " . mysql_error());

Также ваш запрос выглядит плохо сформированным (неправильно ставит кавычку в конце), я не уверен насчет PHP, но это должно сработать:

$queryStatus = mysql_query("INSERT into `database`.`users` (`first`, `last`, `pass`, `user`, `email`, `active`) VALUES ('$first', '$last', '$password', '$user', '$email', '0')");
0 голосов
/ 23 мая 2011

У вас есть дополнительная двойная кавычка (") прямо перед закрывающей скобкой, которая указана перед" или умри ".

...