使用文本文件

时间:2017-09-04 06:15:53

标签: php html

我正在尝试使用文本文件中的值填充下拉列表。我有以下代码,但是,我没有在下拉列表中获得任何内容。任何人都可以帮助我吗?

这是我的jquery和HTML下拉列表的代码:

<script>
$filename = 'pytxt.txt';
$eachlines = file($filename, FILE_IGNORE_NEW_LINES);
echo '<select name="value" id="value">';
foreach($eachlines as $lines){
echo "<option>($lines)</option>";
}
echo '</select>';

</script>
</head>
<body>
    <div id="page-wrap">
        <h1>Pulls from text files</h1>
        <select id="value">
            <option selected value="base">Please Select</option>
            <option value="1"></option>
            <option value="2"></option>
        </select>

    </div>
</body>

3 个答案:

答案 0 :(得分:3)

1.您当前的代码页必须是.php页面。(页面扩展名必须为.php

2.更改代码如下: -

<?php
//remove <script></script> and add php start and close tag
//comment these two lines when code started working fine
error_reporting(E_ALL);
ini_set('display_errors',1);

$filename = 'pytxt.txt';
$eachlines = file($filename, FILE_IGNORE_NEW_LINES);

?>
<body>
    <div id="page-wrap">
        <h1>Pulls from text files</h1>
        <select id="value">
            <option selected value="base">Please Select</option>
           <?php foreach($eachlines as $lines){ //add php code here
                echo "<option value='".$lines."'>$lines</option>";
            }?>
        </select>
    </div>
</body>

答案 1 :(得分:0)

因为您似乎想要一个jQuery / HTML答案......

  1. 使用ajax读取文本文件
  2. {{3}}将数据放入数组(对PHP函数执行类似操作的JS函数爆炸)
  3. 将您的每个选项附加到选择列表中。
  4. <head>
      <script>
        $.get('pytxt.txt'),
          function(data) {
            console.log(data); /* Open the console too see the data */
            var options = data.split(','),
              /* Something to "explode" by. See link. */
              $select = $('select#value');
            for (var i = 0; i < options.length; i++) {
              $select.append('<option value="' + i + '">' + options[i] + '</option>"');
            }
          }, "text");
      </script>
    </head>
    
    <body>
      <div id="page-wrap">
        <h1>Pulls from text files</h1>
        <select id="value">
                    <option selected value="base">Please Select</option>
                </select>
    
      </div>
    </body>
    

答案 2 :(得分:0)

要赶上你的代码,你可以做一些像

<?php
    $filename  = 'pytxt.txt';
    $eachlines = file($filename, FILE_IGNORE_NEW_LINES);
    $select    = '<select name="value" id="value">';
    foreach($eachlines as $lines)
    {
        $options .= "<option>{$lines}</option>";
    }
    $select .= $options . "</select>";
?>

而且你可以将它添加到你的HTML中。这一切都应该在同一个php文件中。 (不推荐的方式!)

<body>
<div id="page-wrap">
    <h1>Pulls from text files</h1>
    <?php echo $select; ?>

</div>
</body>
即使这是令人讨厌的来源!我建议从html中分离php。但要赶上你的来源,这可能是这样的。