Ошибка анализа: ошибка синтаксиса, неожиданная (T_VARIABLE)
Я выполняю некоторые запросы и получаю следующую ошибку:
Ошибка анализа: синтаксическая ошибка, неожиданный "$ section2" (T_VARIABLE) в строке 22
Строка 22:
$section2 = $db->prepare("INSERT INTO learning_style_scores VALUES (5,12,4)");
У меня нет подсказки, почему я получаю это, я проверил свой синтаксис, и все кажется правильным. В принципе это ничего не нравится после выполнения запроса $section1
EDIT:
Я понимаю, что это склонно к 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();
?>
Ответы
Ответ 1
После точки с запятой этой строки у вашего кода есть некоторые странные символы:
$section1->execute();
$section2->execute(); //same for this line
Если вы посмотрите в hex-редактор, вы увидите следующее:
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
Смотрите здесь:
(Да, я знаю, что мои круги не самые приятные)
И вот как это должно выглядеть:
Решение
Просто напишите инструкцию с помощью клавиатуры и пальцев.