Помогите найти ошибку в запросе к бд

Статус
В этой теме нельзя размещать новые ответы.

Playing

Постоялец
Регистрация
9 Авг 2010
Сообщения
77
Реакции
4
Доброе утро, нуллед. Простите за идиотский вопрос, уже чет час не могу понять где я что напортачил (3е сутки почти без сна),

Скрипт к БД подключается, но в итогде записей никаких не происходит. Как я понимаю ошибка тут:


$result = mysql_query("INSERT INTO jos_vm_product_type_1 (`product_id`, `nov_rayoun`, `nov_podraz`, `nov_mrai`, `nov_street`, `nov_ndoma`, `nov_opdoma`, `nov_kop`, `nov_pl_ot`, `nov_pl_do`, `nov_kol_kom`, `nov_ann`) VALUES ('', '$nm', '$nm2', '$nm3', '$nm4', '$nm5', '$nm6', '$nm7', '$nm8', '$nm9', '$nm10' )");

Спасибо большое!)
 
NulleTop, похоже что там не лишняя запятая с пробелом а попытка всунуть пустое значение

ТС, честно говоря мне не совсем понятно желание сделать именно так
если у product_id стоит атрибут AUTO_INCREMENT, что вполне логично для всяких "ид" то сам product_id в запросе не нужен, равно как и вот это (выделил цветом) :
ну а про кол-во полей было сказано выше
 
Не претендую на профессионализм, но "в столбик" визуально понятнее.
PHP:
$result = mysql_query("
INSERT INTO jos_vm_product_type_1 (
    `nov_rayoun`,
    `nov_podraz`,
    `nov_mrai`,
    `nov_street`,
    `nov_ndoma`,
    `nov_opdoma`,
    `nov_kop`,
    `nov_pl_ot`,
    `nov_pl_do`,
    `nov_kol_kom`,
    `nov_ann`)
VALUES (
    '$nm',
    '$nm2',
    '$nm3',
    '$nm4',
    '$nm5',
    '$nm6',
    '$nm7',
    '$nm8',
    '$nm9',
    '$nm10' );
    ");
1. Если в инсерте идет не *, а перечисление полей поле с автоинскрементом указывать не нужно.
2. Визуально видно, что исерт больше валуес, значит пропущено поле.
3. После валуес рекомендуется ставить разделитель ;
 
я бы еще синтаксис вставки php переменных в запрос добавил...
PHP:
VALUES ( '".$nm."', '".$nm2."', '".$nm3."', '".$nm4."', '".$nm5."', '".$nm6."', '".$nm7."', '".$nm8."', '".$nm9."', '".$nm10."' );
 
Вообще, запрос сильно убитый.
если у поля автоинкремент, тогда его указывать не надо.
В таком случае двойные кавычки, запятая и пробел тут не нужны.
 
для начала mysql_error(). т.к. вы не скинули код ошибки, это может быть все: от косяка из-за необработанных переменных, до отсутствия таблицы.

и вообще полезно ознакомится
Для просмотра ссылки Войди или Зарегистрируйся
 
Дело в том что поле как раз не авто, забыл указать.

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