如何在PHP中调试“Undefined variable”?

时间:2017-05-02 06:49:34

标签: php mysql

  

注意:未定义的变量:第67行的C:\ xampp \ htdocs \ quizzer \ add.php中的mysqli

     

致命错误:在第67行的> C:\ xampp \ htdocs \ quizzer \ add.php中调用null上的成员函数query()

这是我的代码,它给出了错误:

$questions = $mysqli->query($query) or die($mysqli->error.__LINE__);
$total = $questions->num_rows;
$next = $total+1;

2 个答案:

答案 0 :(得分:2)

好像你没有设置$mysqli

$mysqli = new mysqli(host, user, pass, db);

(将hostuserpassdb替换为您的数据库值,例如:localhostroot,{{1 },root

关于PHP文档的

Learn more about MySQLi

答案 1 :(得分:2)

1)连接丢失

2)删除表名周围的单引号。

3)使用准备好的声明

注意:如果我们需要访问任何函数内部的连接变量,我们可以使用该全局变量访问它。

//db connection

     global $conn;

        $servername = "localhost";  //host name

        $username = "username"; //username

        $password = "password"; //password

        $mysql_database = "dbname"; //database name

    //mysqli prepared statement 

        $conn = mysqli_connect($servername, $username, $password) or die("Connection failed: " . mysqli_connect_error());

       mysqli_select_db($conn,$mysql_database) or die("Opps some thing went wrong");

       $query = "SELECT * FROM questions";

        $stmt = $conn->prepare($query);
        $stmt->execute();
        $get_result =$stmt->get_result();

        $row_count= $get_result->num_rows;

        if($row_count>0)
        {

           while($row=$get_result->fetch_assoc())
           {

             print_r($row);
           }

        }