我在连接数据库时遇到问题
<?php
@mysqli_connect( "127.0.0.1", "root", "root" ) or die( "Cannot connect to the database!" );
@mysqli_select_db( "phpherexamen" ) or die( "Connected to the database, but there's nothing here!" );
session_start();
?>
这是我用来连接我的bd的代码,但我总是收到消息:
已连接到数据库,但此处没有任何内容!
我的数据库看起来像
我没看到什么? :)
答案 0 :(得分:2)
你应该使用mysqli_connect函数的结果作为mysql_select_db函数的第二个参数。
$link = mysqli_connect( "127.0.0.1", "root", "root" )
if (!$link) {
die("Cannot connect to the database!");
}
$db_selected = mysql_select_db('phpherexamen', $link);
if (!$db_selected) {
die ("Connected to the database, but there's nothing here!");
}
答案 1 :(得分:1)
使用程序样式mysqli
,您需要传递mysqli_select_db
mysqli
的实例
$mysqli = mysqli_connect("127.0.0.1", "root", "root");
mysqli_select_db($mysqli, "phpherexamen");
答案 2 :(得分:0)
将连接存储在变量中,然后将其传递给select_db命令。
$db = mysqli_connect(...);
mysqli_select_db($db, 'phpherexamen');
答案 3 :(得分:0)
你使用面向对象的风格:
$handle = @mysqli_connect( "127.0.0.1", "root", "root" ) or die( "Cannot connect to the database!" );
$handle->mysqli_select_db( "phpherexamen" ) or die( "Connected to the database, but there's nothing here!" );
或程序风格:
$handle = @mysqli_connect( "127.0.0.1", "root", "root" ) or die( "Cannot connect to the database!" );
@$mysqli_select_db($handle, "phpherexamen" ) or die( "Connected to the database, but there's nothing here!" );
但是Mysqli要求一个对象知道mysql select db应该应用于哪个连接。
旁注:被MySQLi取代的旧扩展MySQL支持缓存最后一个连接,所以你不需要指定数据库句柄但如果你有一个使用多个连接的网站或者想要解雇一个网站,这是一个很好的错误磁铁查询循环结果或类似的时候,为什么这只适用于有效的句柄或更好的所述对象,这比其他旧的方法更加理智。