I am executing some queries and am getting the following the error:
Parse error: syntax error, unexpected '$section2' (T_VARIABLE) on line
22
Line 22 is:
$section2 = $db->prepare("INSERT INTO learning_style_scores VALUES (5,12,4)");
I don't have a clue why I am getting this, I have checked my syntax and all seems to be correct. It basically doesn't like anything after the $section1
query is executed
EDIT:
I understand this is prone to SQL injection but I am doing it like this for testing purposes only.
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();
?>
Answer
Your code has some weird characters after the semicolon of this line:
$section1->execute();
$section2->execute(); //same for this line
If you look into a hex editor you see this:
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
See here:
(Yeah I know my circles aren't the nicest)
And this is how it should look like:
Solution?
Just write the statement new with your keyboard and your fingers.
No comments:
Post a Comment