Я выполняю некоторые запросы и получаю следующее сообщение об ошибке:
Ошибка анализа: синтаксическая ошибка, неожиданный «$ section2» (T_VARIABLE) в строке 22
Строка 22:
$section2 = $db->prepare("INSERT INTO learning_style_scores VALUES (5,12,4)");
У меня нет подсказки, почему я получаю это, я проверил свой синтаксис, и все кажется правильным. Это в основном ничего не нравится после $section1
запроса $section1
РЕДАКТИРОВАТЬ:
Я понимаю, что это склонно к SQL-инъекции, но я делаю это как это только для целей тестирования.
<?php session_start(); try { $db = new PDO("mysql:dbname=questionnaire;host=localhost", "root", ""); $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); } catch(Exception $e) { echo 'Caught exception: ', $e->getMessage(), "\n"; } $session = md5(session_id()); // insert section1 data into database $section1 = $db->prepare('INSERT INTO section1 VALUES (7,"test")'); $section1->execute(); // insert learning style score into database $section2 = $db->prepare("INSERT INTO learning_style_scores VALUES (5,12,4)"); $section2->execute(); ?>
После запятой этой строки у вашего кода есть некоторые странные символы:
$section1->execute(); $section2->execute(); //same for this line
Если вы посмотрите на шестнадцатеричный редактор, вы увидите следующее:
24 73 65 63 74 69 6f 6e 31 2d 3e 65 78 65 63 75 74 65 28 29 3b e2 80 8b //^^^^^^^^This bit right here //And it should look like this: 24 73 65 63 74 69 6f 6e 31 2d 3e 65 78 65 63 75 74 65 28 29 3b
Глянь сюда:
(Да, я знаю, что мои круги не самые приятные)
И вот как это должно выглядеть:
Решение?
Просто напишите заявление с помощью клавиатуры и пальцев.