我對PHP相當陌生,而且還有很長的路要走。也許,這是一個邏輯失敗,或者我只是不知道PHP的工作原理。 無論如何,我提供的代碼來自我的管理控制面板。我試圖建立一個頁面來連接到數據庫,而不是顯示所有的數據庫名稱,並從單選按鈕中選擇其中的一個。當按下提交再次顯示錶。後顯示錶下一步將編輯,添加更新等我還沒有。因爲我無法讓mysql_select_db工作。它給出了錯誤。 錯誤在於;mysql_select_db使用POST變量
說明:未定義變量:連接在/public_html/php/insert_delete_update_amend/mydata03.php上線94
警告:mysql_select_db():提供的參數不是在/的public_html /一個有效的MySQL鏈路資源上線94 PHP/insert_delete_update_amend/mydata03.php無法連接到數據庫
任何幫助將非常感激。 P.S .:同樣當提交第一個表單時,第一個表單消失,第二個表單出現等等。
<?php
// form variables
$DisplayDBinfoForm = true;
$DisplayDBform = false;
if (isset($_POST['db_info_submit'])) { //when user presses db info submit button
//select which form to hide or appear
$DisplayDBinfoForm = false;
$DisplayDBform = true;
$hostname = $_POST['db_name'];
$db_user_name = $_POST['db_user_name'];
$db_user_password = $_POST['db_user_password'];
$connect = mysql_connect($hostname,$db_user_name,$db_user_password);
if(!$connect) die("Could not connect");
echo "<p><b>connected successfully</b></p>\n";
}
if($DisplayDBinfoForm) {
?>
<form name="dbinfo" method="POST" action="mydata03.php" onsubmit="return validateForm();">
Host Name: <input type="text" name="db_name" /><br />
<br />
DB User Name <input type="text" name="db_user_name" /><br />
<br />
DB User Password: <input type="text" name="db_user_password" /><br />
<br />
<input type="submit" name="db_info_submit"value="Login"><br />
</form>
<?php
}
if($DisplayDBform) {
?>
<form name="delete_table" id="delete_table" action="mydata03.php" method="post">
<table width="30%" border="1">
<tbody>
<?php
$query = "SHOW DATABASES";
$resultSet = mysql_query($query);
while($database = mysql_fetch_array($resultSet)) { // go through each row that was returned in $result
$dbname = $database[0];
echo "<tr><th>Database Name</th>
<th>Select</th>
</tr>
<tr>
<td>$dbname</td>
<td><input name=\"radDB\" id=\"radDB\" type=\"radio\" value=\"$dbname\"</td>
</tr>\n";
}
?>
</tbody>
</table>
<p>
<input name="btnSelectDB" type="submit" value="Select" />
</form>
</p>
<?php
}
if(isset($_POST['btnSelectDB'])) {
$DisplayDBinfoForm = false; // hide form
$DisplayDBform = false; // hide form
$db_name = $_REQUEST["radDB"]; // the db na,e
echo "The " . $db_name . " is selected\n";
$select_db = mysql_select_db($db_name,$connect);
if(!$select_db) die("Could not connect to db". mysql_error());
echo "<b>connected successfully to db</b>";
}
?>
$ connect = mysql_connect($ hostname,$ db_user_name,$ db_user_password);這條線是失敗的。因此,當試圖選擇數據庫時,您傳遞了無效的連接標識符。確認這實際上是連接到數據庫。它輸出「連接成功」嗎? – Lock
此外,不知道這是否會有所幫助。但是,看起來這一行:「$ select_db = mysql_select_db($ db_name,$ connect);」不在$ PHP連接定義的PHP標記之外,因此,它可能不知道$ connect在哪裏... – Phorce
請停止使用此代碼。 'mysql_'函數正在[棄用](http://www.deprecatedphp.com/mysql)。使用'PDO'或'mysqli_'。 – Kermit