error: Database not selected

error: Database not selected

我被这个问题困住了:没有选择数据库。我翻阅了此处发布的相同问题,但经过数小时的阅读,我无法弄清楚为什么未选择数据库。我创建了一个数据库 job 和一个 table job。我 运行 带有 WAMP 服务器的脚本。抱歉 "everyday question." 请帮忙!

<?php

// load Smarty library
require('C:/wamp/www/smarty-3.1.21/libs/Smarty.class.php');

$servername = "localhost";
$dbname = "job";

// Create connection
$conn = mysqli_connect($servername, $dbname);

// Check connection
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}

$smarty = new Smarty;

$smarty->setTemplateDir('C:\wamp\www\app\templates');
$smarty->setCompileDir('C:\wamp\www\app\templates_c');
$smarty->setConfigDir('C:\wamp\www\app\configs');
$smarty->setCacheDir('C:\wamp\www\app\cache');


$rows = array();
$sql = "SELECT * FROM job";
$result = mysqli_query($conn, $sql);

if (!$result) {
    echo 'MySQL Error: ' . mysqli_error($conn);
    exit;
}

while ($row = mysqli_fetch_assoc($result)) {
    $rows[] = $row;
    }

$smarty->assign('output', $rows);
$smarty->display('result.tpl');

mysqli_close($conn);

?>

这些不是 mysqli_connect 的正确参数。您必须传递主机、用户名、密码,然后是数据库名称。您只传递了主机名和数据库名称,因此连接不正确。

mysqli_connect()需要四个参数,分别是:-

host name, user name, password, database name (optional).

因此您需要提供所有这些参数。如果不这样做,您将无法连接,并且会出现错误。

注意:- 数据库名称是可选的,您可以使用 mysqli_select_db() 进一步选择数据库。

您的 mysqli_connect() 函数中缺少一些参数,它应该是这样的:

$dbHost = '127.0.0.1';
$dbUser = 'username';
$dbPass = 'password';
$dbDb = 'database';
$conn = mysqli_connect($dbHost, $dbUser, $dbPass, $dbDb);