APOSTROPHE в MySQL / PHP
-
24-09-2019 - |
Вопрос
Я пытаюсь выучить php / mysql.
Вставка данных в MySQL работает нормально, но вставка тех, которые с APOSTROPHE создают ошибку. Я пытался использовать mysql_real_escape_String, но это не работает.
будет признателен за любую помощь.
<?php
include 'config.php';
echo "Connected <br />";
$auth = $_POST['author'];
$quo = $_POST['quote'];
$author = mysql_real_escape_string($auth);
$quote = mysql_real_escape_string($quo);
//**************************
//inserting data
$sql="INSERT INTO Quotes (vauthor, cquotes)
VALUES ($author, $quote)";
if (!mysql_query($sql,$conn))
{
die('Error: ' . mysql_error());
}
echo "1 record added";
...
Что я делаю неправильно?
Решение
Ваши ценности - это строки, им все еще нужно разделители в операторе SQL, даже после того, как вы сбежали их.
//inserting data
$sql="INSERT INTO Quotes (vauthor, cquotes)
VALUES ('$author', '$quote')";
Другие советы
Строки должны быть завернуты в цитаты в SQL:
$sql="INSERT INTO Quotes (vauthor, cquotes)
VALUES ('$author', '$quote')";
Не связан с StackOverflow