繁体   English   中英

将txt文件行传递到html文件POST表单选择选项,并将检索到的选项选择到php文件

[英]Pass txt file lines to html file POST form select options, and retrieve option selected to a php file

老实说,我一直在为过去两天的Stack Overflow寻找问题的答案。 请不要降级我的问题...

我的问题是:我有一个txt文件,其中逐行显示城市名称:

21-citiesNames.txt:

Paris
London
Amsterdam
Brussel
Berlin

我有一个html文件(我不确定是否应该是php文件而不是btw),在其中,我想创建一个html表单,在该表单中,我希望用户输入他的名字,然后选择下拉列表中的城市。

我想逐行导入文本文件(从上面),作为选择列表选项。 当然,还要保存用户的姓名和城市选择,然后将它们打印在另一个php文件中(例如,“ Selected:(name),(city)。“)。

现在,如果用户未选择城市,则该php文件将显示“已选择:(名称),您未选择任何城市”。

21-scriptUseForm.html:

<html>
<head></head>

<body>

    <!--Form for choice name and city:-->
    <form method='POST' action='21-script.php'>
        Enter your name:
        <input type='text' name='userName'/>
        <br><br>
        Enter your city:

        <select name='city'>
            <?
                define("fileName", "21-citiesNames.txt");
                global $cities;
                global $options='';
                $cityLines=file_get_contents(fileName);
                $cities=explode("\n",$cityLines);

                foreach($cities as $city){
                        $options.='<option value="'.$city.'">'.$city.'</option>';
                }
                echo $options;
            ?>
            <option value='city'> <?echo $options?></option>
        </select>

        <br><br>
        <input type=submit value="Click here">
    </form>

</body> 
</html>

现在,该php文件接收并打印用户的输入:

21-script.php:

<?php
session_start();

$_SESSION['userName'] = $_POST['userName'];

if(!isset($_POST['city']))
    $cityChosenOrNot= "You didn't choose any city";
else
{
    $_SESSION['cityChosen'] = $_POST['city'];
    $cityChosenOrNot=$_POST['city'];
}

$name=$_POST['userName'];

echo "Selected: ".$name.", ".$cityChosenOrNot.".";

?>

还有一件事...我想打开一个新的txt文件,并在其中保存用户过去的所有输入,姓名和城市,一个接一个,每次用户输入新输入时都会动态更改。

我目前的问题是我运行localhost / 21-scriptUseForm.html,页面如下所示:

输入您的姓名:[输入姓名的地方]

输入您的城市:[完全不选择任何选项。]

单击此处(提交按钮)

就是这样了。 我到处都在寻找答案,例如:

将文本文件列表加载到<option>标记中

PHP读取文件并创建下拉菜单

从.txt创建选择下拉列表?

还有更多...请帮助,非常感谢。

问题可能是您在标准HTML文件中使用PHP-将21-scriptUseForm.html更改为21-scriptUseForm.php

虽然可以将.html文件配置为由PHP解析,但这通常不是默认行为。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM