php 未选择数据库错误消息

9cbw7uwe  于 2023-01-08  发布在  PHP
关注(0)|答案(5)|浏览(120)

我正在改变我所有的查询是使用PHP MySQL到MySQLi。
我创建了一个名为db.php的文件,其中包含连接设置。
该文件包括

<?php
$db = new mysqli('localhost','mysqlusername','mysqlpassword');
echo "<h1>Success database connection</h1>";
if($db->connect_errno > 0)
{
die('No connection [' . $db->connect_error . ']');
}
?>

我将该文件包括在:

require_once "/location/db.php";

之后我使用:

if($db->connect_error)
 {
   echo "Not connected, error: ".$db->connect_error;
 }  
 else
 {
   echo "Connected.";
 }

它的回声连接,所以我假设我的连接是好的。
我有3个PHP变量,我想插入到我的数据库表代码
我首先回显变量,这样我就可以确定它们有内容。
在我验证了我的连接是正确的(返回Connected)并回显了我想要用其执行查询的变量的内容之后:

$sql = "INSERT INTO 'Code' (`Name`, `Code`, `Admin`)
VALUES ('$name', '$code', '$admin')"; 
echo $sql;//show query
// Performs the $sql query on the server to insert the values
if ($db->query($sql) === TRUE)
{
    echo 'User Created.';
}
else 
{
    echo 'Errorcreating : '. $db->error;
}

我收到错误创建消息:未选择数据库
我使用echo $sql来显示查询。
如果我直接在SQL中复制查询,它会正常工作。
这是我第一次使用MySQLi,所以可能我犯了一个非常愚蠢的错误,但我找不到它。

d5vmydt9

d5vmydt91#

打开连接时,可以将数据库名称作为第四个参数传递:

$db = new mysqli('localhost','mysqlusername','mysqlpassword','database');

另外,转义符也不正确。不要在表名两边使用单引号,而要使用反勾符

$sql = "INSERT INTO `Code` (`Name`, `Code`, `Admin`)VALUES ('$name', '$code', '$admin')";
i34xakig

i34xakig2#

实际上,您没有选择任何数据库。您已经连接到DB服务器,那里可能有数百个数据库。您需要指定要将查询发送到哪个数据库!
您的查询是正确的,并且在您直接输入时可以正常工作,因为在您这样做时已经指定了要使用的数据库。

ua4mk5z4

ua4mk5z43#

代码中没有选择数据库,根据www.example.com中的this pagephp.netmysqli_connect或mysqli构造函数中有一个参数,用于输入数据库名称。
下面是一个简单的例子:

<?php
$mysqli = new mysqli('localhost', 'my_user', 'my_password', 'my_db');
brccelvz

brccelvz4#

尝试此解决方案:

$db = mysqli_connect($host,$username,$password);

$resultado = mysqli_select_db($db, $dbname);

if (!$resultado) {
    die("Connection failed " . mysqli_connect_error()); 
}else{
    echo "<p>Successful database connection</p>";
}
0dxa2lsx

0dxa2lsx5#

试试这个

<?php
$servername = "localhost";
$username = "username";
$password = "password";
// Create connection
$conn = mysqli_connect($servername, $username, $password);
// Check connection
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
echo "Connected successfully";
?>

相关问题