Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/296.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
php下拉菜单项分隔_Php - Fatal编程技术网

php下拉菜单项分隔

php下拉菜单项分隔,php,Php,我试图从PHP脚本中的外部txt文件创建一个下拉菜单。我使用explode()隔离了专有名称,但没有将项目显示为5个单独的菜单,而不是单个菜单 以下是我正在使用的代码: <?php $file_handle = fopen("courselist.txt", "rb"); while (!feof($file_handle) ) { $line_of_text = fgets($file_handle); $parts = explode('::', $line_of_text);

我试图从PHP脚本中的外部txt文件创建一个下拉菜单。我使用explode()隔离了专有名称,但没有将项目显示为5个单独的菜单,而不是单个菜单

以下是我正在使用的代码:

<?php

 $file_handle = fopen("courselist.txt", "rb");

while (!feof($file_handle) ) {

$line_of_text = fgets($file_handle);
$parts = explode('::', $line_of_text);

echo '<select name="course">';
echo '<option value="'.$parts[0].'">'.$parts[0].'</option>';

echo '</select>';

}

echo'<table>

<form method="post" action="index.php">

            <tr><td>What is your student name?
    <input type="text" name="studentname" /></td></tr>

                <tr><td>What is your student number?
            <input type="text" name="studentnum" /></td></tr>

    <tr><td><input type="submit" /></td></tr>
</form>

    </table>';

fclose($file_handle);

?>

course list.txt包含5个课程名称,信息以“:”分隔:“因此使用explode(),因为我只需要课程名称。我试图将所有课程名称包含在一个下拉菜单中。我忽略了什么

谢谢大家!

echo'
echo'
-循环时,code>不应位于
中:

echo '<select name="course">';
while (!feof($file_handle) ) {
    $line_of_text = fgets($file_handle);
    $parts = explode('::', $line_of_text);
    echo '<option value="'.$parts[0].'">'.$parts[0].'</option>';
}
echo '</select>';
echo';
而(!feof($file_handle)){
$line\u of_text=fgets($file\u handle);
$parts=分解(“::”,$line\u of_text);
回显'.$parts[0].';
}
回声';

此外,如果您希望选择数据通过
POST
可用,则应将其放入
表单中

尝试使用foreach($part作为$part){echo'.$part.';}。您的代码将仅显示数组中的第一项。我熟悉表单方法,但是在这种情况下,我不知道如何将这些选项直接实现到我的表单中?您应该只回显
,然后回显您的select和其他字段。然后关闭表单