Php 下拉列表未从MySQL填充

Php 下拉列表未从MySQL填充,php,html,mysql,drop-down-menu,Php,Html,Mysql,Drop Down Menu,我正试图用MySQL数据库中的PHP填充一个下拉列表。现在我的下拉列表中没有任何内容。我已确保数据库名、服务器名、用户名和密码正确 这是我的PHP文件queryfunction.PHP: <?php function connect(){ $servername = "localhost"; $username = "root"; $password = "******"; $database = "lab4"; // Create connecti

我正试图用MySQL数据库中的PHP填充一个下拉列表。现在我的下拉列表中没有任何内容。我已确保数据库名、服务器名、用户名和密码正确

这是我的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>

在表格内的文档中进一步向下:

<tr>
    <th>Country</th>
    <td>
        <select name="CountryDropDown">
        <?php query() ?>
        </select>
        <?php close()?>
    </td>
</tr>

国家

尝试更改此行
while($record=mysqli\u fetch\u array($mydata)){
到此
while($record=mysqli\u fetch\u array($mydata,mysqli\u ASSOC)){

或者向我们展示您的
$record
变量数据

您至少有两个问题-(1)变量范围问题,请参见
$conn
connect()
中定义,但在该函数之外不可用。(2)您有
$mydata=mysqli_查询(“选择国家/地区”);
mysqli_查询()
需要连接作为第一个参数-
$mydata=mysqli\u查询($conn,“选择*来自国家/地区”)
,但第一个问题需要先解决,然后才能使用。好吧,我已经尝试了你们两位的建议,但仍然没有成功。显示$record变量数据是什么意思?我不知道如何执行您要求的操作。但我注意到,无论我如何称呼我的数据库。因此,我的查询似乎无法进行到正确的数据库。我尝试将数据库名称添加到新的mysqli的末尾,但它似乎没有显示我的html的其余部分。也没有显示semicolan