mysqli_select_db()期望参数1为mysqli,给定字符串

use*_*909 8 php mysqli

可能重复:
mysql_fetch_array()期望参数1是资源,在select中给出boolean

我是Mysqli_*的新手,我收到了这些错误:

警告:mysqli_select_db()期望参数1为mysqli,字符串在第11行的D:\ Hosting\9864230\html\includes\connection.php中给出

警告:mysqli_error()期望在第13行的D:\ Hosting\9864230\html\includes\connection.php中给出1个参数0

数据库选择失败:

<?php
require("constants.php");

// 1. Create a database connection
$connection = mysqli_connect(DB_SERVER,DB_USER,DB_PASS);
if (!$connection) {
    die("Database connection failed: " . mysqli_error());
}

// 2. Select a database to use 
$db_select = mysqli_select_db(DB_NAME,$connection);
if (!$db_select) {
    die("Database selection failed: " . mysqli_error());
}
?>
Run Code Online (Sandbox Code Playgroud)

Chr*_*ght 48

你的论点是错误的.根据文档,连接首先出现

<?php
require("constants.php");

// 1. Create a database connection
$connection = mysqli_connect(DB_SERVER,DB_USER,DB_PASS);
if (!$connection) {
    die("Database connection failed");
}

// 2. Select a database to use 
$db_select = mysqli_select_db($connection, DB_NAME);
if (!$db_select) {
    die("Database selection failed: " . mysqli_error($connection));
}
?>
Run Code Online (Sandbox Code Playgroud)


Bar*_*mar 5

// 2. Select a database to use 
$db_select = mysqli_select_db($connection, DB_NAME);
if (!$db_select) {
    die("Database selection failed: " . mysqli_error($connection));
}
Run Code Online (Sandbox Code Playgroud)

您将参数的顺序mysqli_select_db()向后移动。并mysqli_error()要求您提供一个连接参数。mysqli_XXX与mysql_XXX不同,这些参数不再是可选的。

还要注意,使用mysqli可以在mysqli_connect()以下位置指定数据库:

$connection = mysqli_connect(DB_SERVER, DB_USER, DB_PASS, DB_NAME);
if (!$connection) {
  die("Database connection failed: " . mysqli_connect_error();
}
Run Code Online (Sandbox Code Playgroud)

必须使用mysqli_connect_error()而不是mysqli_error()来从中获取错误mysqli_connect(),因为后者需要您提供有效的连接。