繁体   English   中英

从数据库中获取数据以创建表-PHP

[英]Fetch data from database to create a table - PHP

我创建了一个从数据库中检索数据的函数,以及一个将数据放入表中的函数。

function get_order()
{
    $order_query = "SELECT order_number From tbl_order_header";
    $data = mysqli_query($con, $order_query);
    $order = array();
    while ($object = mysqli_fetch_object($data))
    {
        $order[] = $object;
    }
    mysqli_close($con);
    return $order;
}

function get_table()
{
    $table_str = '<table>';
    $get_orders = get_order();
    foreach ($get_orders as $get_order) 
    {
        $table_str .= '<td>';
        $table_str .= '<td>'.$get_order->order_number.'</td>';
        $table_str .= '</td>';
    }
    $table_str .= '</table>';
    return $table_str;

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Untitled Document</title>
</head>
<body>
 <?php echo get_table();?>
</body>
</html>

但是我收到如下错误消息。

line 8: $data = mysqli_query($con, $order_query);
Warning: mysqli_query() expects parameter 1 to be mysqli, null given in C:\xampp\htdocs\cmg-logistics\Testing.php on line 8

line 10: while ($object = mysqli_fetch_object($data))

Warning: mysqli_fetch_object() expects parameter 1 to be mysqli_result, null given in C:\xampp\htdocs\cmg-logistics\Testing.php on line 10

line 14: mysqli_close($con);

Warning: mysqli_close() expects parameter 1 to be mysqli, null given in C:\xampp\htdocs\cmg-logistics\Testing.php on line 14

我该如何解决错误?

这是因为未定义$ con。 尝试在函数内传递$ con。

$con = mysqli_connect(HOST, USER, PASS, DB_NAME);

可能是您的连接变量问题。

这样连接

//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");

函数内部应该是

function get_order()
{
   global $conn;

 }

您得到的所有错误都是警告,而不是错误。 如果您的PHP代码有错误,它将返回错误状态500 INTERNAL SERVER ERROR 您可以使用以下命令禁用警告。

// Turn off all error reporting
error_reporting(0);
ini_set("display_errors", "0");

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM