2015-05-17 2 views
0

Я создал форум и я хотел вставить некоторые данные в таблицы в MySQL, как этот

$sql = "INSERT INTO 
        topics(topic_subject, 
          topic_date, 
          topic_cat, 
          topic_by) 
       VALUES('" . mysql_real_escape_string($_POST['topic_subject']) . "', 
          NOW(), 
          " . mysql_real_escape_string($_POST['topic_cat']) . ", 
          " . $_SESSION['email'] . " 
          )"; 

и он дает ошибку, как «У вас ошибка в ваш SQL синтаксис, проверьте руководство, которое соответствует вашей версии сервера MySQL для правильного синтаксиса, чтобы использовать рядом с «)» в строке 1"

+0

Выведите запрос и посмотрите на него. Похоже, что вам не хватает котировок. Одно место '". Mysql_real_escape_string ($ _ POST ['topic_cat']). ".... – chris85

ответ

0

Во-первых, пожалуйста, попробуйте просто с назначением с переменной ...

$topic_subject = mysql_real_escape_string($_POST['topic_subject']); 
$topic_cat = mysql_real_escape_string($_POST['topic_cat']); 
$topic_by = $_SESSION['email']; 
$sql = "INSERT INTO topics(topic_subject, 
         topic_date, 
         topic_cat, 
         topic_by) 
      VALUES('$topic_subject', 
        NOW(), 
        '$topic_cat', 
        '$topic_by' 
         )"; 
+0

Я тоже пробовал это:« Невозможно добавить или обновить дочернюю строку: ограничение внешнего ключа завершается с ошибкой ('polytechnic'''topics' , CONSTRAINT 'themes_ibfk_2' FOREIGN KEY (' topic_by') ССЫЛКИ 'students' (' Email') ON UPDATE CASCADE) «Ошибка приходит, здесь политехникум является мое имя базы данных, темы и ученики - это таблицы. –

Смежные вопросы