| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Базы Данных > Ошибка в запросе, но где она? |
| Автор: champion 2.8.2006, 08:14 | ||||||
MySQL выдаёт такую ошибку:
Делаю такой запрос:
Который формируется так:
В чем ошибка? |
| Автор: Drache 2.8.2006, 11:45 |
| запрос точно такой получается? выведи на экран $SQL. И вообще зачем же так извращаться? insert поддерживает точно такой же синтаксис как и update (я имею в виду set). Поэтому проверку ($crows==0) можно делать только один раз в начале, а дальше уже в любом случае писать все по типа $field=$value. |
| Автор: Drache 2.8.2006, 14:21 | ||
| совет (может понравится): 1. В формочке задавать только те поля, которые будут заноситься в БД (под такими же названиями) или же разбивать всю форму на массивы (если предполагается заполнение не одной таблицы или не одним запросом). 2. запрос оформлять таким макаром:
Можешь вообще все это вынести в отдельную ф-цию, которой будешь только передавать массив данных ($_POSt['data']), имя таблицы ('some_table') и если есть - ключик к обновлению ($crows). Ф-ция, думаю пригодится. Плюс добавить осталось экранирование ВСЕХ данных - не доверяй данным, введенным в формочку. Здесь в помощь mysql_escape_string(); Где ошибка в твоем предыдущем варианте кода - не знаю, может вообще просто опечатка, которую никак не можем заметить. |