我已經就此代碼提出了一個問題,我正在處理,而不是針對同一問題。無論哪種方式抱歉轉發!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
不!現在!!!這是工作!插入查詢中還有一些錯誤。剛編輯它。請複製並檢查下半部分的錯誤 –