mysqli问题 [英] Trouble with mysqli

查看:47
本文介绍了mysqli问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我是mysqli函数的新手. 我已经编写了执行简单选择功能的代码. 这是我所做的

I am new to mysqli functions . I have written a code to do the simple select functionality . Here is what I have done

            <?php
        #---- ini settings(ini)---
        ini_set('display_errors', '1');
        #---------(/ini)------------

        #-------initialisations(init)---
        $dbUser = 'myuser';
        $dbPass = 'mypass';
        $dbhost = 'localhost';
        $dbname = 'mydb';
        #------------(/init)------------

        #---- database connection (db connect)-----
        $mysqli = new mysqli($dbhost, $dbUser, $dbPass, $dbname);
        $is_error  = ($mysqli->connect_errno)?true:false;
        if( $is_error )
        {
            echo $mysqli->connect_error;
        }

        #-----------------(/ db connect)-----------

        /** ------------  queries ----------      **/
        $stmt = $mysqli->prepare("SELECT * FROM dept");
                    if(! $stmt)
        {
            echo "statement not prepared well";
        }
        else
        {
            echo $mysqli->error;
        }
        if (!$stmt->execute()) {
             echo "Execute failed: (" . $stmt->errno . ") " . $stmt->error;
        }

        if (!($res = $stmt->get_result())) {
            echo "Getting result set failed: (" . $stmt->errno . ") " . $stmt->error;
        }
        /** ------------------------------- **/

        #------result ----
        var_dump($res->fetch_all());
        #---------(/result)----

        ?>

但是,当我运行此代码时,什么也没有显示,没有错误,没有数据,只是白色的空白页.. 什么我错过了.....?或者我应该如何调试

But When I run this code nothing gets displayed no error , no data just a white blank page .. wht I am missing out ..... ? Or how Should I debug it

提前谢谢.

推荐答案

// change settings for error handler to show errors
// $this setup is used for checking errors for development to be shown.... 
ini_set('display_errors', 1);
error_reporting(E_ALL);

尝试添加其他内容以查看查询是否成功执行,但没有结果.

Try to add else to see if query is successfuly executed but no result.

if (!$stmt->execute()) {
             echo "Execute failed: (" . $stmt->errno . ") " . $stmt->error;
        }
// add else
else{
      echo "Query is succesfully executed but no result fetch"
}

用该查询替换您的查询以计算数据数量

replace your query by this one to count the number of datas

if ($result = mysqli_query($mysqli, "SELECT * FROM dept")) {
    printf("Select returned %d rows.\n", mysqli_num_rows($result));

    /* free result set */
    mysqli_free_result($result);
}

这篇关于mysqli问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆