Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/249.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 警告:mysqli_num_rows()要求参数1为mysqli_结果,第行中给出null_Php_Mysql_Mysqli - Fatal编程技术网

Php 警告:mysqli_num_rows()要求参数1为mysqli_结果,第行中给出null

Php 警告:mysqli_num_rows()要求参数1为mysqli_结果,第行中给出null,php,mysql,mysqli,Php,Mysql,Mysqli,我是PHP新手,有一个新问题。我从mysqli开始新的生活。 我想用php创建一个简单的登录表单。有人能帮我解决这个错误吗?mysqli\u num\u rows($result)包含一个参数$result,该参数指定由mysqli\u query()返回的结果集标识符 这是您修改过的代码: <?php include("config.php"); session_start(); if($_SERVER["REQUEST_METHOD"] == "POST") {

我是PHP新手,有一个新问题。我从mysqli开始新的生活。 我想用php创建一个简单的登录表单。有人能帮我解决这个错误吗?

mysqli\u num\u rows($result)
包含一个参数
$result
,该参数指定由
mysqli\u query()返回的结果集标识符

这是您修改过的代码:

<?php
   include("config.php");
   session_start();

   if($_SERVER["REQUEST_METHOD"] == "POST") {
      // username and password sent from form 

      $myusername = mysqli_real_escape_string($db,$_POST['username']);
      $mypassword = mysqli_real_escape_string($db,$_POST['password']); 

      $sql = "SELECT user_id FROM user WHERE username = $myusername and password = $mypassword";
      $result = mysqli_query($db,$sql);
      $rows = mysqli_fetch_array($result);
      $active = $rows["user_id"];

      $count = mysqli_num_rows($active);

      // If result matched $myusername and $mypassword, table row must be 1 row

      if($count == 1) {
         session_register("myusername");
         $_SESSION['login_user'] = $myusername;

         header("location: index.php");
      }else {
         $error = "Your Account Credentials is Invalid, Please Try Again";
      }
   }
?>

有关详细信息,请访问

替换

<?php
    include("config.php");
    session_start();

    if($_SERVER["REQUEST_METHOD"] == "POST") {
        // username and password sent from form 

        $myusername = mysqli_real_escape_string($db,$_POST['username']);
        $mypassword = mysqli_real_escape_string($db,$_POST['password']); 

        $sql = "SELECT user_id FROM user WHERE username = $myusername and password = $mypassword";
        $result = mysqli_query($db,$sql);
        $rows = mysqli_fetch_array($result);
        $active = $rows["user_id"];

        $count = mysqli_num_rows($result);

        // If result matched $myusername and $mypassword, table row must be 1 row

        if($count == 1) {
            //session_register("myusername");
            $_SESSION['login_user'] = $myusername;

            header("location: index.php");
        }else {
            $error = "Your Account Credentials is Invalid, Please Try Again";
      }
   }
?>


尝试
$count=mysqli\u num\u行($result)
而不是
$count=mysqli\u num\u行($active)!是,@the.salman.a建议您必须计算真正包含所有条目的varibal$结果,或者您可以检查
$count==1
行[“user\u id”]
是否存在,或者现在是否不计算。这个问题如何?致命错误:调用未定义的函数session\u register()在C:\wamp64\www\alexis\page-login.php中,第20行
session\u register()
已被弃用,请将其删除并改用
$\u session[]
!另外,更新了答案,如果它解决了您以前的问题,请接受。
$count = mysqli_num_rows($active);
$count = mysqli_num_rows($result);