Почему это делает то, что делает?Отключение строки во вставном запросе
Код:
<?php
if (isset($_POST['sourceInsert'])) {
$url = $db_con3->real_escape_string($_POST['url']);
$desc = $db_con3->real_escape_string($_POST['desc']);
echo '$urlbefore is ' . $url . '<br />'; ///for troubleshooting
$result = $db_con3->query("INSERT INTO gdrive_links (evalid, userid, url, desc) VALUES ('$evalid', '$id', '$url', '$desc')");
echo '$urlafter is ' . $url . '<br />'; ///For troubleshooting
echo $db_con3->error; ///For troubleshooting
}
?>
HTML выход:
$urlbefore is https://docs.google.com/file/d/0B0tcjQ3FxlB6dWlMTkNQVjBwVDA/edit?usp=sharing
$urlafter is https://docs.google.com/file/d/0B0tcjQ3FxlB6dWlMTkNQVjBwVDA/edit?usp=sharing
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'desc) VALUES ('1284017', '1', 'https://docs.google.com/file/d/0B0tcjQ3FxlB6dWlMT' at line 1
Так строка штраф до и после строки запроса, но в запросе он отрезают на 49-й символ. Я что-то упустил? Похоже, что мой синтаксис запроса правильный ...
У вас есть '(evalid, userid, url, desc) VALUES ('$ evalid', '$ id', '$ url', '$ desc')', не должно быть '(evalid, userid, url, desc) VALUES ('$ evalid', '$ userid', '$ url', '$ desc') '? –
'desc' - это ключевое слово mysql ... переименовать в любой другой –
нет, идентификатор пользователя для этой таблицы является идентификатором $ id для пользователя. – Rich701