SQL ошибка синтаксиса, PHP MYSQL
$sql = "SELECT post_title, post_body, post_author FROM forum_post WHERE post_id='".$pid."' forum_id='".$id."' AND post_type='o'";
if($topicPost = $mysql->prepare($sql)) {
$topicPost->bind_param('ss',$pid,$id);
$topicPost->bind_result($post_title, $post_body, $post_author);
$topicPost->execute();
$topicPost->store_result();
} else {
echo "ErrorinSQLLL, ".$mysql->error;
exit();
}
Так что мое заявление SQL-запрос.
Я получаю это напечатано на моей странице:
ErrorinSQLLL, Вы имеете ошибку в вашем синтаксисе SQL; проверьте руководство, которое соответствует версии сервера MySQL для правильного синтаксиса использовать вблизи «forum_id =» 1 «» в строке 1
В случае необходимости я могу разместить больше моего кода.
Вы пропустите И здесь "post_id = '$ PID' AND forum_id = '$ ID" – jarlh
'WHERE post_id = '$ PID' forum_id = '$ id'', а затем пытается связать '$ pid' и' $ id' ... но в SQL не существует заполнителей для привязки к ним ... похоже, что у вас есть фундаментальное непонимание связывания переменные, которые делают ваш SQL небезопасным ..... ваш SQL должен быть 'WHERE post_id =? И forum_id =? ' –