Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Добавление данных в БД с помощью формы
$result=mysql_query("insert into auto (id_model,mark_id,model,body,engine,drive,transmission,year,info,date-auto,img_auto1,img_auto2,img_auto3,img_auto4) values ('$mark','$model','$body','$engine','','','','$year','','','')");
if($result=='true')
{echo"Успешно";}
else{echo"Не успешно";}
?>
выскакивает не успешно. в чем проблема?
В БД:
id_model имеет формат int (auto_increment)
mark_id имеет формат int
date_auto имеет формат date
year имеет формат int
остальные varchar
и не обязательно нужно что бы были заполнены все поля.
Заранее спасибо=)
Okula
Отправлено: 17 Февраля, 2012 - 16:54:33
Участник
Покинул форум
Сообщений всего: 1389
Дата рег-ции: Окт. 2010
Помог: 42 раз(а)
Почитай о фильтраци переменных и о SQL-инъекциях, у тебя тут одна сплошная дырень.
И ещё - помести в обраные ковычи все ячейки и имя таблицы в SQL запросе.
Поля которые заполняются автоматически, средствами SQL (такие как auto_increment, поля с типами date и т.д.) не пишётся в SQL запросе, пишутся только те, в которые будут заносится данные.
Plusminuz
Отправлено: 17 Февраля, 2012 - 17:10:07
Частый гость
Покинул форум
Сообщений всего: 156
Дата рег-ции: Апр. 2011 Откуда: Россия
$result=mysql_query("insert into marks (mark,img) values ('$mark','')");
if($result=='true')
{echo"Успешно";}
else{echo"Не успешно";}
?>
в результате выходит сообщение "успешно"
и в БД заносится в поле id автоматически цифра, в поле mark название марка, а в поле img не заносится ничего.
Делаю по такому же принципу в примере приведенном в 1ом сообщении, но не получается.
DelphinPRO
Отправлено: 17 Февраля, 2012 - 18:19:47
Активный участник
Покинул форум
Сообщений всего: 7187
Дата рег-ции: Февр. 2012
Покинул форум
Сообщений всего: 9
Дата рег-ции: Февр. 2012
Помог: 0 раз(а)
спасибо тебе DelphinPRO, команда mysql_error() помогла разобраться в чем проблема. (Добавление)
А теперь еще такой вопрос. Допустим у меня на сайте есть какая то информация, есть ссылка редактировать которая перенаправляет на страницу редактирования данных.
есть форма с полями в каждом поле отображается информация правильно. Объясните каким образом отредактировав поля я могу отправить в БД эти данные, заменив старые.
Написал я по твоему примеру и получил очень плохой результат. когда я нажал обновить у меня все поля которые я задавал обновлять во всех записях просто стерлись и стали пустыми.
вот форма в которую при нажатии изменить забиваются данными которые есть в данный момент
$result=mysql_query($strSQL="SELECT auto.*, marks.*, DATE_FORMAT(date_auto,'%d.%m.%Y') AS date_auto FROM auto, marks WHERE `auto`.`mark_id`=`marks`.`id` && `auto`.`id_model`='$info'");
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.