从php和.dat填充下拉列表

时间:2016-11-15 21:25:14

标签: php html xml

我已尝试在此处搜索此内容以及通过Google搜索此内容,但提到的选项目前尚无法解决。我不会说代码写得不正确,可能只是我完成设置的方式,这就是错误。但是我已经尝试过不同类型的解决方案来解决这个案子,但到目前为止它还没有用。

快速提升信息,我是第一年的IT学生,我们还没有开始使用MySQL。

这是我的索引到目前为止的样子:

    window.onload = oppstart;

var xmlhttp;

function oppstart() {
  document.getElementById("registrer").onclick = lagre;
}

function lagre(){
  var nedtrekksliste = document.getElementById("nedtrekksliste").value;
  var navn = document.getElementById("navn").value;
  var epost = document.getElementById("epost").value;

  xmlhttp = new XMLHttpRequest();
  xmlhttp.onreadystatechange = statusforandring;

  var url = "registrer.php?nedtrekksliste=" + nedtrekksliste + "&navn=" + navn + "&epost=" + epost;

  xmlhttp.open("GET",url,true);
  xmlhttp.send();

  function statusforandring(){

    if (xmlhttp.readyState === 4 && xmlhttp.status === 200){
      document.getElementById("utskrift").innerHTML = "Du har nå registert påmelding til en av våre presentasjoner. Takk og ha en fin dag videre hilsen Enigma!";
    }
  }
}

这就是我写PHP的方式:

  $nedtrekksliste = $_GET["nedtrekksliste"];
  $navn = $_GET["navn"];
  $epost = $_GET["epost"];

  $linje = $nedtrekksListe . "¤" . $navn . "¤" . $ePost . "¤" . "\n";

  $fil = fopen("data.dat", "a");
  fwrite = ($fil, $linje);
  fclose ($fil);

  echo "Du har nå registrert emnevalg, takk!";

最后,这是我尝试将inn填充到下拉列表中的数据内容,而我想要的信息是.dat文件格式:

812¤SuperIT¤2016-12-06 18:00¤25¤
135¤OddIT¤2016-01-10 17:25¤10¤
614¤MediaHuset¤2016-12-14 16:15¤67¤
1337¤Elite¤2017-02-22 15:45¤31¤
135¤ParIT¤2016-03-17 18:30¤7¤
147¤L2P¤2017-01-10 20:00¤5¤

我得到的任务是创建一个注册表单,用于选择学生想要参加的演示文稿的其中一个选项。我已经修复了注册按钮和2x输入文本区域,这些区域用于学生写下他们的姓名和电子邮件。所以我似乎无法解决下拉列表问题。

1 个答案:

答案 0 :(得分:0)

在php中读取文件非常简单,如果你的索引是html和php的混合,你可以读取data.dat并从HTML内部构建SELECT:

<强>的index.php

<select name="presentations">

        <?php

            // path to your file ( in this case, both files within same dir)
            $filename = "data.dat";

            // open the file in read only monde
            $file = fopen( $filename, "r" );

            // get the file size, read and store the content in '$fileText'
            $filesize = filesize( $filename );
            $filetext = fread( $file, $filesize );

            // seperate the content of the data file into an array of lines
            $lines = explode("\n", $filetext);

            // loop through every line  
            for ($i = 0; $i < sizeof($lines); $i++) {

                // seperate this line according to the seperator '¤'
                $members = explode("¤", $lines[$i]);

                // we can now access the individual members of this line
                $id = $members[0];
                $name = $members[1];
                $datetime = $members[2];
                $room = $members[3];

                // outputs a 'Option' element inside the SELECT of our HTML page
                echo '<option value="'. $id . '">' . $name . '</option>';
            }

        ?>

</select>

如果您的索引只是HTML,您可以在PHP中构建一个JSON对象,然后(以与上面类似的方式)使用javascript构建SELECT。

然后,您需要完成您的JavaScript才能获得所选的演示文稿:

<强> functions.js

<script type="text/javascript">

    // SELECT element on HTML page
    var selected = document.getElementById("presentations");

    // storing the ID of the selected field
    var ID_presentation = selected.options[selected.selectedIndex].value;
    // OR
    // storing the name
    var ID_presentation = selected.options[selected.selectedIndex].text;
</script>

我希望这可以帮助你。