Mysqli_query无法执行并抛出错误

时间:2017-10-14 21:19:03

标签: php mysqli

我正在从php中的表中检索数据。我的代码在这里:

<?php 
$con = require('config.php');
?>

<html>
<head><title>Php Practise Web</title></head>
    <body>
        <?php 
            $sqlQuery = 'SELECT * FROM  customers';
            $customersData = mysqli_query($con,$sqlQuery);
                if(!$customersData){
                    die('Error in retrieving :'.mysqli_connect_error($con));
                    }
                    else{
                 while($dataRow = mysqli_fetch_array($customersData, MYSQLI_NUM)){?>
        <table>
            <tr>
                <thead>Customer Name<thead>
                <thead>Customer Email<thead>
                <thead>Customer Username<thead>
                <thead>Customer Age<thead>
            </tr>
            <tr>
                <td><?php echo $dataRow['c_name']?></td>
                <td><?php echo $dataRow['c_email']?></td>
                <td><?php echo $dataRow['c_username']?></td>
                <td><?php echo $dataRow['c_age']?></td>
            </tr>
        </table>
    <?php 
                 }
            }
    ?>
    </body>
  </html>

但它会抛出这样的错误 这是我的config.php代码

<?php 
$con = mysqli_connect("localhost","root","","phppractise");

if(mysqli_connect_errno()){
    echo "Failed to connect to Mysql : ".mysqli_connect_errno();
}
else{
    echo "Database Connected";
  }

&GT;

enter image description here

实际上从一开始我就与我的数据库建立连接,然后从名为“customers”的表中检索数据。我在mysqli_query中传递连接变量和查询变量,但它仍然抛出错误。请告诉我我的代码在哪里错了?

1 个答案:

答案 0 :(得分:1)

您需要从此处删除$con =

$con = require('config.php');

这就是你收到错误的原因。

只是做:

require('config.php');

或包含该文件。

include('config.php');

该变量与您的连接相同。

试图解释这里发生了什么,是因为它很可能在require()和连接中循环变量赋值,这意味着它将1作为布尔值返回(整数)从发布的错误开始。

  • 这是我最好的假设,对我来说是有道理的。

取自错误的图像:

  

警告:mysqli_query()期望参数1为mysqli integer给定

为了使用这样的语法($con = require('config.php');),您需要使用类/方法,并从那里使用return它的实例。