ОШИБКА: Предупреждение: mysql_num_rows () ожидает, что параметр 1 будет ресурсом, boolean задан в C: xampp htdocs ... .... php в строке 19

Я продолжаю получать сообщение об ошибке используя mysql_num_rows(), можете ли вы помочь мне выяснить, что пошло не так в моем коде?

Вот мой код:

<?php 
//check if the user press submit
if (isset($_POST['submit'] )) {

    $customer = preg_replace('#[^A-Za-z0-9]#i', '', $_POST["username"]); // filter everything but numbers and letters
    $password = preg_replace('#[^A-Za-z0-9]#i', '', $_POST["password"]); // filter everything but numbers and letters

    $sql = mysql_query("SELECT id FROM members WHERE username='$customer' AND password='$password' LIMIT 1"); // query the person
    // ------- MAKE SURE PERSON EXISTS IN DATABASE ---------
    $existCount = mysql_num_rows($sql); // count the row nums
    if ($existCount == 1) { // evaluate the count
         while($row = mysql_fetch_array($sql)){ 
             $id = $row["id"];
         }
         $_SESSION["id"] = $id;
         $_SESSION["customer"] = $customer;
         $_SESSION["password"] = $password;
         header("location: index.php");
         exit();
    } else {
        echo 'That information is incorrect, try again <a href="customer_login.php">Click Here</a>';
        exit();
    }
}
?>

Я пробовал, mysql_errno()как вам посоветовал .. и это эхо 1146

и когда я ищу эту ошибку, он говорит, что

1146: Table 'kossu.nonexistenttable' doesn't exist

Но я не знаю, что это значит ... Пожалуйста, помогите.

php,

1

Ответов: 7


8 принят

Наверное, mysql_query()не получилось. В этом случае он возвращается false. Используйте mysql_query (), чтобы узнать, что происходит.


1

При возникновении ошибки falseвозвратитесь mysql_query()вместо объекта ресурса. Проверьте возвращаемое значение, mysql_num_rows()прежде чем передавать его mysql_error().


0

Из документов :

Возвращаемые значения

Для SELECT, SHOW, DESCRIBE, EXPLAIN и других операторов, возвращающих набор результатов, mysql_query () возвращает ресурс с успехом или false при ошибке.

Итак, у вас есть ошибка. Используйте, mysql_error()чтобы узнать, что.


0

mysql_query()не смогли. Он возвращает. falseЧтобы увидеть использование ошибкиmysql_error()


0

Возможно, вы не выбрали нужную базу данных. Раньше я сталкивался с такой проблемой, и ошибка была выбрана мной.

PHP,
Похожие вопросы