2016-12-13 3 views
0

Я пытаюсь выяснить, находится ли заголовок, заполненный кем-либо в форме, в базе данных (иначе я собираюсь добавить номер в заголовок). Но почему-то код под ним всегда возвращает «не существует».num_rows всегда возвращает назад, что в базе данных нет строк (которые равны моему вводу), что неверно

[my_table_name], конечно, изменено правильным именем таблицы. Кто-нибудь знает, в чем проблема?

$title = $_POST["title"]; 
$sql = "SELECT * FROM [my_table_name] WHERE title=$title"; 
$result = mysqli_query($con,$sql); 
if(mysqli_num_rows($result)>0) { 
    echo "exists"; 
} else { 
    echo "doesn't exist"; 
} 

ответ

0

Ваш SQL. Добавить одиночные кавычки на $title:

$sql = "SELECT * FROM [my_table_name] WHERE title='$title'"; 
0

Не имею комментарий previlege поэтому пишет здесь. Проблема выглядит, что вы не вложили в одиночные кавычки, как название является строкой, поэтому она должна быть следующим образом

$title = $_POST["title"]; 
$sql = "SELECT * FROM [my_table_name] WHERE title='$title'"; 
$result = mysqli_query($sql) or die(mysqli_error($con)); 
if(mysqli_num_rows($result)>0) { 
    echo "exists"; 
} else { 
    echo "doesn't exist"; 
} 

также положить заявление умереть, так что если есть ошибка, то она остановится выполнение.

С благодарностью