Не получается записать данные в базу, пишет "Ошибка!" В чем может быть проблема? Код (PHP): <?php session_start(); include("database.php"); if ($_POST){ $i=0; $sql .= " INSERT INTO Publications (idUser,idQuestion,NameWork,TypeWork,Volume,Pages,Publisher) VALUES "; foreach ($_POST['NameWork'] as $key => $value) { if (empty($value)) continue; $idUser=mysql_real_escape_string($_SESSION['idUser']); $idQuestion=mysql_real_escape_string($_POST['idQuestion'][$key]); $NameWork=mysql_real_escape_string($_POST['NameWork'][$key]); $TypeWork=mysql_real_escape_string($_POST['TypeWork'][$key]); $Volume=mysql_real_escape_string($_POST['Volume'][$key]); $Pages=mysql_real_escape_string($_POST['Pages'][$key]); $Publisher=mysql_real_escape_string($_POST['Publisher'][$key]); if ($i>0) $sql.=' , '; $i++; $sql .= " ('$idUser','$key','$NameWork','$TypeWork','$Volume','$Pages','$Publisher')"; } echo $sql; if(!mysql_query($sql)) {echo '<center><p><b>Ошибка!</b></p></center>';} else {echo '<center><p><b>Ваши данные добавлены! </b></p></center>';} } ?> <br><a href=exit.php>Выйти</a>
вероятнее всего ошибка в этой строке Код (Text): $sql .= " ('$idUser','$key','$NameWork','$TypeWork','$Volume','$Pages','$Publisher')"; строковые типы полей должны быть в ковычках, например, Код (Text): $sql .= " ('$idUser','$key', '\'$NameWork\'','$TypeWork','$Volume','\'$Pages\'','$Publisher')"; а вообще как выглядет результат запроса Код (Text): echo $sql; ???
ответ такой INSERT INTO Publications (idUser,idQuestion,NameWork,TypeWork,Volume,Pages,Publisher) VALUES ('2','0','\'Первый\'','2','800000','\'15-96\'','\'Феникс\'') Ошибка!
что и следовало ожидать... то есть, только строковые типы должны быть в кавычках, а цифры просто вставлены... всё просто
Код (Text): INSERT INTO `Publications` (`idUser`,`idQuestion`,`NameWork`,`TypeWork`,`Volume`,`Pages`,`Publisher`) VALUES (2,0,'\'Первый\'','2',800000,'\'15-96\'','\'Феникс\'') - это стока должна быть передана в mysql_query() а для начало бы проверил в phpMyAdmin вот так - Код (Text): INSERT INTO `Publications` (`idUser`,`idQuestion`,`NameWork`,`TypeWork`,`Volume`,`Pages`,`Publisher`) VALUES (2,0,'Первый','2',800000,'15-96','Феникс')