php - 错误: No database selected when displaying data on website

标签 php mysql

我的名字是安娜,我正在建立一个带有节日日历的网站!人们可以在登录后添加节日。但现在我的问题是,如何显示人们放入我的数据库中的内容。我在此网站上找到了以下代码,但是当我将其放入脚本中时,出现未选择数据库的错误。但我确实选择了一个数据库(节日)?

            $sql = "SELECT festival_name, festival_organisator, festival_begin FROM Festivals WHERE festival_id=3";
            $result = mysql_query($sql) or die(mysql_error());

            $festival_name = $festival_organisator = $festival_begin = array();

            while($row = mysql_fetch_assoc($result)) {
                $festival_name[] = $row['festival_name'];
                $festival_organisator[] = $row['festival_organisator'];
                $festival_begin[] = $row['festival_begin'];
            }

希望大家能帮帮我!提前致谢

最佳答案

您尚未连接到数据库本身

表格节日中查询选择并不意味着您选择了节日 数据库,这是两个截然不同的东西。

  • 数据库 Festivals 包含所有表(表 Festivals、表 x 等)。
  • 表 Festivals 包含您可以查询的数据(festival_name、festival_organisator 等)。

现在您必须连接

看看 documentation总是一个不错的选择,让我们看看如何连接并选择数据库:

<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
    die('Not connected : ' . mysql_error());
}

// make foo the current db
$db_selected = mysql_select_db('foo', $link);
if (!$db_selected) {
    die ('Can\'t use foo : ' . mysql_error());
}
?>

您应该连接到数据库,并可以通过 $link 访问所选数据库。

mysql_query($sql, $link)

但不要这样做!

除非你必须这样做,但可爱的小狗会死:(

您一开始就不应该使用 mysql_*,因为它不再受支持。相反,您应该使用 PDOmysqli完成你的任务。一开始可能听起来或看起来比较棘手,但实际上相当简单:

关于php - 错误: No database selected when displaying data on website,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28048037/

相关文章:

mysql - 根据两列之间的 INT 差异选择其他行

mysql - 最畅销的产品

mysql - 意外的 Lambda 行为

mysql - 使用准备好的语句的结果作为查询中的临时表

php - Laravel 5.4 - 'updateOrCreate' 方法。检查记录是否为 'updated' 或 'created'

php - 使用 Laravel 将数组数据存储在数据库中

PHP 搜索脚本无法正确返回页面

javascript - 使用 Bootstrap 模式作为成人内容警告的问题

php - 将 DATE ADD 与 INSERT 准备好的语句结合使用

php - 不同语言的用户名