错误:未选择数据库

Nik*_*lay 6 php mysql smarty3

我遇到了这个问题:没有选择数据库.我翻过这里发布的相同问题,但经过几个小时的阅读后,我无法弄清楚为什么没有选择数据库.我创建了一个数据库job和一个表job.我用WAMP服务器运行脚本.对"日常问题"感到抱歉.请帮忙!

<?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);

?>
Run Code Online (Sandbox Code Playgroud)

eli*_*ide 13

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


Ana*_*Die 6

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

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

所以你需要提供所有这些参数.如果不这样做,则无法连接,您将收到错误.

注意: - 数据库名称是可选的,可mysqli_select_db()用于进一步选择数据库.


小智 6

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

$dbHost = '127.0.0.1';
$dbUser = 'username';
$dbPass = 'password';
$dbDb = 'database';
$conn = mysqli_connect($dbHost, $dbUser, $dbPass, $dbDb);
Run Code Online (Sandbox Code Playgroud)