以下查询未执行,我对此感到困惑。查询返回“错误查询数据库”的die
子句,但我的所有信息都是准确的。
我的查询变量中是否出现语法错误?
<?php
$db_host = 'localhost';
$db_user = 'root';
$db_pass = 'root';
$db_database = 'bbg_db_2';
$dbc = mysql_connect($db_host,$db_user,$db_pass) or die('Unable to establish a database connection');
$query = "SELECT category_name, category_desc FROM categories";
$result = mysqli_query($dbc, $query) or die ('error querying database');
while ($row = mysqli_fetch_array($result)) {
$catname = $row['category_name'];
$catdesc = $row['category_desc'];
echo "<li>$catname</br><span>$catdesc</span></li>";
}
mysqli_close($dbc);
?>
答案 0 :(得分:5)
您的代码中遗漏了mysql_select_db($db_database
)。
答案 1 :(得分:4)
mysql_connect应该是mysqli_connect,因为你之后使用mysqli_query并使用mysqli_select_db来选择数据库
答案 2 :(得分:3)
两个问题:
mysql
API关联,但之后尝试使用mysqli
API进行查询; mysqli_select_db
选择数据库。使用mysqli_error($dbc)
执行一些基本的错误检查会很快向您揭示这一点。
另外,作为样式注释,ARGH选项卡在行内!坏!错误!标签用于缩进,而不是对齐。
答案 3 :(得分:1)
尝试:
... or die(mysqli_error());
相反,它将输出查询失败的确切原因。
答案 4 :(得分:1)
你正在混淆mysql和mysqli。你需要选择一个。