数据库连接问题

时间:2011-07-20 15:00:36

标签: php mysql database-connection

以下查询未执行,我对此感到困惑。查询返回“错误查询数据库”的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);
?>

5 个答案:

答案 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。你需要选择一个。