我正在尝试从数据库(产品列表)中检索数据,但在执行代码时我有一个空白页面。
<?php
$DB_HOST = "@@@";
$DB_NAME = "@@@";
$DB_PASS = "@@@";
$DB_USER = "@@@";
$db_obj = new mysqli($DB_HOST, $DB_USER, $DB_PASS, $DB_NAME);
if($db_obj->connect_errno > 0) {
die('Connection failed [' . $db_obj->connect_error . ']');
}
if($db_obj->connect_errno > 0){
die('Unable to connect [' . $db_obj->connect_errno . ']');
}
?>
<html>
<head>
<title>List of products</title>
</head>
<body>
<?php
$query="SELECT * FROM product";
$result_obj = $db_obj->query($query);
$row=mysql_fetch_row($result);
echo $row;
?>
</body>
</html>
我做得对吗?问题究竟在哪里?是问题可以从服务器端?
新尝试:
<?php
// session_start();
// require("mysqli.php");
$DB_HOST = "webdev.cs.kent.edu";
$DB_NAME = "ralsuhai";
$DB_PASS = "810646396";
$DB_USER = "ralsuhai";
$db_obj = new mysqli($DB_HOST, $DB_USER, $DB_PASS, $DB_NAME);
if($db_obj->connect_errno > 0) {
die('Connection failed [' . $db_obj->connect_error . ']');
}
if($db_obj->connect_errno > 0){
die('Unable to connect [' . $db_obj->connect_errno . ']');
}
?>
<html>
<head>
<title>List of products</title>
</head>
<body>
<?php
$query="SELECT * FROM product";
$result_obj = $db_obj->query($query);
//first try
//while($row=$result_obj->fetch_row() )
//{
// var_dump($row);
//}
//second try
//$res = array();
//while($row = $result->fetch_array(MYSQLI_ASSOC))
//{
//$res[] = $row;
//}
//print_r($res);
?>
<table><tr><th>Product Id</th><th>Name</th><th>Price</th></tr>
<?php
$result_obj = $db_obj->query($query);
while($row=$result_obj->fetch_row() )
{ ?>
<tr>
<td><?=implode('</td><td>',$row)?></td>
</tr>
<?php
}
?>
</table>
<?php
?>
</body>
</html>
答案 0 :(得分:0)
你在这里遇到了一些问题。首先,变量$db_obj
是一个mysqli对象,并且您尝试在其上使用mysql_fetch行函数。这不会起作用,接下来即使它确实有效,$ row也是一个阵列。这个......
?>
<table><tr><th>Product Id</th><th>Name</th><th>Price</th></tr>
<?php
$result_obj = $db_obj->query($query);
while($row=$result_obj->fetch_row() )
{ ?>
<tr>
<td><?php echo implode('</td><td>',$row); ?></td>
</tr>
<?php
}
?>
</table>
<?php
这应该转储查询返回的每一行,你可以看到发生了什么。请注意,$ db_obj-&gt; query($ query)的结果是一个对象。这应该打印一张包含数据的表格。
答案 1 :(得分:0)
<?php
$DB_HOST = "@@@";
$DB_NAME = "@@@";
$DB_PASS = "@@@";
$DB_USER = "@@@";
$db_obj = new mysqli($DB_HOST, $DB_USER, $DB_PASS, $DB_NAME);
if($db_obj->connect_errno) {
die('Connection failed [' . $db_obj->connect_error . ']');
}
?>
<html>
<head>
<title>List of products</title>
</head>
<body>
<?php
$query="SELECT * FROM product";
$result_obj = $db_obj->query($query);
$row=$result_obj->fetch_assoc();
print_r($row);
?>
</body>
</html>