обновлённая версияНевозможно добавить записи в MySQL, если запись содержит апостроф
<?php
$link = mysqli_connect("localhost", "root", "root", "metadata");
mysqli_set_charset($link, "utf8");
// Check connection
if($link === false){
die("ERROR: Could not connect. " . mysqli_connect_error());
}
// my form located in index.php posts the data here.
$add_movie_original_name = $_POST['movie_original_name'];
$add_movie_tr_name = $_POST['movie_tr_name'];
$add_movie_year = $_POST['movie_year'];
$sql = "INSERT INTO movie(movie_original_name,movie_tr_name,movie_year) VALUES('$add_movie_original_name','$add_movie_tr_name','$add_movie_year')";
if(mysqli_query($link, $sql)){
echo "Records added successfully.";
} else{
echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);
}
// close connection
mysqli_close($link);
?>
Я не могу добавлять записи, если есть апостроф в нем. Например, Невозможно добавить дядю Сэма.
Вот ошибка, которую я получаю. Я попытался добавить фильм под названием Название фильма.
ОШИБКА: Не удалось выполнить INSERT INTO movie (movie_original_name, movie_tr_name, movie_year) VALUES ('Movie's Name', '', '2014'). У вас есть ошибка в синтаксисе SQL; проверьте руководство, соответствующее версии вашего сервера MySQL, для правильного синтаксиса для использования рядом с именем '', '', '2014') 'в строке 1
(Я удалил свои комментарии, поэтому номер строки будет отличаться)
Думаю, я должен использовать трюк, чтобы убежать от персонажей, но не мог понять, как это сделать.
Использование PDO. Подготовьте отчет. – Jonast92
Это синтаксический разбор, а не ошибка времени выполнения. Итак, что такое ** настоящий ** код для строк 41-43? – zerkms
@ Jonast92: хотя ваша точка действительна - OP имеет ошибку разбора – zerkms