【发布时间】:2013-05-06 03:46:38
【问题描述】:
我有一个完美运行的小型数据库,有一个完全命名为“Category”的表,而它又有一个完全命名为“Name”的行。我已经尝试了名称的每个版本(大写和非大写),但我的函数没有返回我希望它返回的内容。有人发现明显的错误吗?数据库连接得很好......或者我正在寻找一些严重麻烦的数据库冲突。
这是我的functions.php,我已将其包含在index.php 中,并在正文中进行了函数调用。 "<?php display_menus(); ?>
<?php
//Connect to database
$link = mysqli_connect('localhost', 'root', 'root');
if (!$link)
{
$output = 'Unable to connect to the database server.';
echo $output;
exit();
}
if (!mysqli_set_charset($link, 'utf8'))
{
$output = 'Unable to set database connection encoding.';
echo $output;
exit();
}
if (!mysqli_select_db($link, 'Asperod6'))
{
$output = 'Unable to locate the "Asperod6" database.';
echo $output;
exit();
}
$output = 'Database connection established.';
echo $output;
//Funktion som skriver ut meny
function display_menus()
{
$result = mysqli_query($link, "SELECT * FROM Category");
if (!$result)
{
$error = 'Error fetching Kategorier: ' . mysqli_error($link);
echo ("There is none");
}
if (mysqli_num_rows($result) > 0)
{
echo "<ul>";
while ($row = mysqli_fetch_array($result))
{
echo "<li>" . $row['Name'] . "</li>";
}
echo "</ul>";
mysqli_free_result($result);
}
}
mysqli_close($link);
?>
【问题讨论】:
-
尝试在表名
SELECT * FROM DBNAME.Category之前添加数据库名 - 并向我们展示数据库连接函数和数据库模式 -
$link 中有什么?并按照@Dagon 的建议去做
-
...如果 $link 在函数外部定义,则需要将其设为全局或解析
-
$link在全局范围内吗? -
哎呀,我不知道在哪里发布更多代码