Member 12214576 Ответов: 1

Предупреждение: mysql_num_rows() ожидает, что параметр 1 будет ресурсом, логическим значением, заданным в C:\xampp\htdocs\


Я пытаюсь проверить свои данные перед вставкой их в базу данных, но эта ошибка всегда появляется

Что я уже пробовал:

<pre>if(isset($_POST['submit'])){
    

$first_name = test_input($_POST["firstname"]);
$last_name = test_input($_POST["lastname"]);
$id = test_input($_POST["member_id"]);
$username = test_input($_POST["username"]);
$password = test_input($_POST["password"]);
$email = test_input($_POST["email"]);
$membertype = test_input($_POST["membertype"]);
$phone = test_input($_POST["phonenumber"]);
$department = test_input($_POST["department"]);

 
  $query = "SELECT * FROM lms WHERE  ID='".$id."' OR email='".$email."' OR  user_name='".$username."' ";
$resultdata = mysqli_query($link , $query);
$data = mysqli_fetch_array($resultdata, MYSQLI_NUM);
    
if($data[0] > 1) {
    echo "User Already in Exists<br/>";
}

else
{
    $sql = "INSERT INTO `member` (`ID`, `first_name`, `last_name`, `member_type`, `password`, `email`, `phoneNo`, `department`, `user_name`)
VALUES ('$id', '$first_name', '$last_name','$membertype','$password','$email','$phone','$department','$username')";
    if (mysqli_query($link,$sql))
    {
        echo "You are now registered<br/>";
    }
    else
    {
 echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);    }
}
    
    
}
function test_input($data) {
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
return $data;
}

?>


я пробовал и это
$results = mysql_num_rows($resultdata);

и
$user = mysqli_fetch_assoc($resultdata);

но это дает мне ту же ошибку, я знаю, что эта ошибка появляется из-за запроса return false result, но я не знаю, что еще я должен использовать

1 Ответов

Рейтинг:
10

Jochen Arndt

Проверьте возвращаемое значение, как показано в примерах по адресу РНР: в mysqli::запрос - руководство по эксплуатации[^]:

if ($resultdata = mysqli_query($link, $query)) {
    /* Success: $resultdata is a mysqli_result object */
    /* Can use $resultdata as parameter for other mysqli functions here */

    /* free result set */
    mysqli_free_result($resultdata);
} else {
    /* Failure: $resultdata is boolean false */
    /* Use mysqli_error($link) to get the error message */
}


Member 12214576

Спасибо