При вызове моей функции появляется ошибка синтаксиса MySQL, любые идеи?Ошибка синтаксиса MySQL
У вас возникла ошибка в синтаксисе SQL; проверьте руководство, которое соответствует версии сервера MySQL для корректного синтаксиса использовать вблизи «» в строке 1
function getComments1() {
$query = mysql_query("SELECT * FROM comments") or die(mysql_error());
while($post = mysql_fetch_assoc($query)) {
echo $post['Author'];
}
}
function addComment($cName, $cContent) {
$query = mysql_query("INSERT INTO comments VALUES(null,'$cName','$cContent'") or die(mysql_error());
}
<?php
include('includes/functions.php');
mysql_set_charset ("utf8");
if(isset($_POST['submit'])) {
if(isset($_POST['CommentName'])) {
if(isset($_POST['CommentContent'])) {
addComment($_POST['CommentName'],$_POST['CommentContent']);
header("Location: derger.php");
} else { "text missing";
}
} else {
echo "name missing";
include('herger.php');
}
} else {
header("Location: werger.php");
}
?>
возможно, из-за неэкранированных характеристик, используйте PDO или mysqli (Parametrize Query) для предотвращения SQL-инъекции. –
Добавляя к комментарию @ Akam, расширение mysql устарело в PHP 5.5, и вам рекомендуется использовать mysqli или PDO. Подробнее об этом здесь: http://www.php.net/manual/en/mysqlinfo.api.choosing.php – Cokegod