[英]How to connect to a new database using PHP MySQL
因此,我一直在嘗試學習如何將MySQL與PHP結合使用,並且設法創建了一個連接並創建了一個數據庫以及一個表。 我不知道該怎么做是一次性創建數據庫以及表。
我的意思是更容易在我的代碼中顯示(這將顯示無法連接錯誤消息,因為connect方法正在嘗試連接到不存在的數據庫。
<?php
$servername = isset($_POST["servername"]) ? $_POST["servername"] : '';
$username = $_POST["username"];
$password = $_POST["password"];
$dbname = $_POST["dbname"];
// Create connection
$conn = mysqli_connect($servername, $username, $password, $dbname);
// Check connection
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
// Create database
$sql = "CREATE DATABASE myDB";
if ($conn->query($sql) === TRUE) {
echo "Database created successfully";
} else {
echo "Error creating database: " . $conn->error;
}
// sql to create table
$sql = "CREATE TABLE MyGuests (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
firstname VARCHAR(30) NOT NULL,
lastname VARCHAR(30) NOT NULL,
email VARCHAR(50),
reg_date TIMESTAMP
)";
if (mysqli_query($conn, $sql)) {
echo "Table MyGuests created successfully";
} else {
echo "Error creating table: " . mysqli_error($conn);
}
mysqli_close($conn);
?>
因此,我要實現的全部工作是連接到MySQL,創建數據庫,為該數據庫創建一個表並關閉一個.php文件中的所有連接。
附帶說明一下,由於用戶能夠定義數據庫名稱( $dbname
),我如何將此值添加到上面的MySQL代碼中? 我在某處聽說您應該將變量添加到引號中? 所以'$dbname'
。 任何幫助都會很好! 提前致謝!
好的,這個問題的原因是因為我正在創建一個安裝類型的頁面,用戶可以在其中連接到自己的數據庫,從而允許用戶為其命名並使用其憑據進行連接。 顯然,我在該領域經驗不是很豐富,我希望我能對此做更好的解釋。
您擁有的所有代碼對我來說都不錯。 我認為您唯一缺少的是在創建數據庫后必須調用
$conn->select_db("myDB");
另外,如果您希望數據庫名稱為$ dbname,則
$sql = "CREATE DATABASE myDB";
應該
$sql = "CREATE DATABASE " . $dbname;
如果我沒有解決您的問題,請給我更多有關您的問題的詳細信息。
您在哪里傳遞所有這些變量?
$ servername = isset($ _ POST [“ servername”])嗎? $ _POST [“ servername”]:'';
$ username = $ _POST [“ username”];
$ password = $ _POST [“ password”];
$ dbname = $ _POST [“ dbname”];
只需簡單地硬編碼服務器名,用戶名,密碼和您的dbname。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.