我想從MySQL數據庫中用PHP填充下拉列表。現在我的下拉列表中沒有填充任何內容。我確定我有正確的數據庫名稱,服務器名稱,用戶名和密碼。沒有從MySQL填充下拉列表
這是我的PHP文件queryfunction.php:
<?php
function connect(){
$servername = "localhost";
$username = "root";
$password = "******";
$database = "lab4";
// Create connection
$conn = new mysqli($servername, $username, $password);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
echo "Connected successfully";
mysqli_select_db($database);
}
function close(){
mysqli_close();
}
function query(){
$mydata = mysqli_query("Select * from country");
while($record = mysqli_fetch_array($mydata)){
echo '<option value = "' . $record['CountryAbbreviation'] . '">' .$record['CountryAbbreviation'] . '"</option>';
}
}
?>
這裏是我的PHP文件,我稱之爲:表內
<?php
include_once "queryfunction.php";
connect();
?>
<!DOCTYPE html/>
<html>
再往下在doc:
<tr>
<th>Country</th>
<td>
<select name="CountryDropDown">
<?php query() ?>
</select>
<?php close()?>
</td>
</tr>
您至少有2個問題 - (1)變量作用域問題,請參閱http://php.net/manual/en/language.variables.scope.php as'$ conn '在'connect()'中定義,但在該函數外部不可用。 (2)你有'$ mydata = mysqli_query(「Select * from country」);'但是'mysqli_query()'需要連接作爲第一個參數 - $ mydata = mysqli_query($ conn,「Select * from country」) ;',但第一個問題需要解決才能使用。 – Sean