数据库连接问题


Database connection issue

下面的查询没有执行,我不知道为什么。查询返回我的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);
?>

你的代码中漏掉了mysql_select_db($db_database)

mysql_connect应该是mysqli_connect,因为在此之后使用mysqli_query和mysqli_select_db来选择数据库

两个问题:

  • 您连接到mysql API,但随后试图查询mysqli API;
  • 您从未使用mysqli_select_db选择数据库。

使用mysqli_error($dbc)执行一些基本的错误检查将很快显示此错误。


另外,作为样式说明,ARGH制表符行内!糟糕了!错了!制表符用于缩进,而不是对齐。

尝试:

... or die(mysqli_error());

,它将输出查询失败的确切原因。

你把mysql和mysqli弄混了。你需要选择一个