我已经就此代码提出了一个问题,我正在处理,而不是针对同一问题。无论哪种方式抱歉转发!mysqli_query无法识别数据库?
所以我在与代码的麻烦,具体如下:
<?php
// Create connection
$host = "localhost";
$username="tudor";
$password="passw0rd";
$con=mysqli_connect($host, $username, $password);
if(! $con)
{
die('Could not connect: ' . mysqli_error());
}
echo 'Connected successfully<br />';
$db_1 = mysqli_select_db($con, 'db_1');
if (! $db_1) {
die('Could not select database: ' . mysqli_error());
}
else {
echo "Database successfully selected<br />===============================<br />";
}
//===================================
$a = 1;
$b = 2234;
$table = "CREATE TABLE info (id INT NOT NULL AUTO_INCREMENT, city CHAR(40), country CHAR(40))";
if (! $table) {
die('Could not create table ' . mysqli_error($con));
}
else {
echo "Table created<br />";
}
$insert = "INSERT INTO info (city, country) VALUES ($a, $b)";
if (! $insert) {
die('Could not insert ' . mysqli_error($con));
}
else {
echo "Inserted<br />";
}
$select = "SELECT * FROM info";
$result = mysqli_query ($con, $insert);
if (! $result) {
die('Result not working ' . mysqli_error($con));
}
else {
echo "Result working<br />";
}
echo "result: ".$result['city']. " ";
mysqli_close($con);
?>
这个输出(块引用不显示分页符):
连接成功数据库成功入选 == =============================表创建插入结果不工作表'db_1.info'不存在
什么d oes它的意思是“表'db.info'”不存在?它清楚地表明我的信息表已创建... 我试图做的是颠倒$ result查询中的变量:$ result = mysqli_query($ insert,$ con);因为我曾在一本书中看过这种语法。然而,所有这给在输出以下消息:
警告:mysqli_query()预计参数1是mysqli的,给予串用C :\ WAMP ...
思考的人?提前致谢!
编辑:非常感谢大家的帮助,非常感谢!
1)你忘了在CREATE TABLE上添加mysqli_query --2)这种连接方式更快 - 3)也忘了在CREATE TABLE上设置PRIMARY KEY('id') –
太棒了!像魅力一样工作,非常感谢!我看到了两个变化:在表创建部分中添加的细节以及从($ con,$ insert)到($ con,$ result)的更改。虽然后者是一个问题,但我认为这是你在表格语法中改变了表格错误的差异。你能解释一下为什么这使它起作用吗? 编辑:对不起,我刚刚看到你的评论。为什么这个连接更快?是否总是需要查询表的创建? – tmnol
不!现在!!!这是工作!插入查询中还有一些错误。刚编辑它。请复制并检查下半部分的错误 –