没有选择数据库。

4
我创建了一个'db.php'文件,用于连接到我的数据库:
$db_user = 'usprojus';
$db_pass = 'xxxxxx';
$db_host = 'localhost';
// Verbinden
$dblink = mysqli_connect($db_host, $db_user, $db_pass);
// Datenbank "myproject" auswaehlen
// Entspricht "USE myproject;"
$selected = mysqli_select_db($dblink, 'myproject');
if (!$selected) {
    die ('Cannot use DB : '.mysqli_error($dblink));
}
mysqli_set_charset($dblink, 'utf8');

为了测试是否正常工作,我正在尝试从我的“用户”表中获取数据:
require_once('db.php'); 

// Get all the data from the "users" table
$result = mysql_query("SELECT * FROM users") 
or die(mysql_error());  


// keeps getting the next row until there are no more to get
while($row = mysql_fetch_array( $result )) {
    // Print out the contents of each row into a table
    echo 'user_id: '.$row['user_id'].'<br />';
    echo 'date_registered: '.$row['date_registered'].'<br />'; 
    echo 'last_login: '.$row['last_login'].'<br />';
    echo 'username: '.$row['username'].'<br />';
    echo 'email: '.$row['email'].'<br />';
    echo 'password: '.$row['password'].'<br />';
    echo 'photo: '.$row['photo'].'<br />';
    echo 'description: '.$row['description'].'<br />';
    echo 'notify: '.$row['notify'].'<br />';

}

但是在浏览器中我遇到了这个错误:

未选择数据库

我真的无法确定问题出在哪里。

对不起,我知道这是一个新手问题,而且似乎已经在这里发布了几次。但我无法解决它。

谢谢你花时间和耐心。


@fred-ii,为什么你会在这个问题被问了4年之后将其标记为重复? - BrokenCode
请查看此问答 https://meta.stackoverflow.com/q/345095/1415724,它将回答您上面的问题。 - Funk Forty Niner
4个回答

6
你混淆了 mysqli_mysql_ 函数。
例如,在第二个文件中使用了 mysqli_connectmysqli_select_dbmysqli_set_charset,但是又使用了 mysql_querymysql_fetch_array 函数。
请选一个使用。

2
也许你应该使用 mysqli_query()(参见php文档)。

1

看起来您正在使用mysqli函数连接数据库,但是您的查询正在使用mysql函数。

尝试将您的查询切换到mysqli函数:

$result = mysqli_query("SELECT * FROM users")

2
非常感谢,它确实起作用了,但我不得不修改为$result = mysqli_query($dblink, "SELECT * FROM users") - BrokenCode

1

问题出在这里:

while($row = mysql_fetch_array( $result )) {

在你的 db.php 文件中,你正在使用改进的 MySQL 扩展 (mysqli) 进行连接。
但是在你的 while 循环中,你使用了旧的 MySQL 扩展。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接