可靠的类别

时间:2013-04-03 13:49:52

标签: php

我的问题是我需要用php制作可靠的类别,但我希望他们从txt文件中选择任何想法​​,我怎么能做到这两个? 我们的想法是,他们在第一个下拉菜单中选择一个类别,然后在第二个选择一个类别,但我希望类别能够使用txt文件进行更改。 任何建议都是真正的贬义! 感谢你的时间! 这是我所做的一个想法

<tr>
        <td height="67" align="right">ΚΑΤΗΓΟΡΙΑ</td>
        <td><label>
          <select name="ΚΑΤΗΓΟΡΙΑ" id="ΚΑΤΗΓΟΡΙΑ" class="update" >
            <option value="ΚΟΙΝΟΧΡΗΣΤΑ" selected="selected">ΚΟΙΝΟΧΡΗΣΤΑ</option>
            <option value="ΘΕΡΜΑΝΣΗ">ΘΕΡΜΑΝΣΗ</option>
            <option value="ΑΝΕΛΚΥΣΤΗΡΑΣ">ΑΝΕΛΚΥΣΤΗΡΑΣ</option>
            <option value="ΕΙΔΙΚΕΣΔΑΠΑΝΕΣ">ΕΙΔΙΚΕΣ ΔΑΠΑΝΕΣ</option>
            <option value="ΙΔΙΟΚΤΗΤΩΝ">ΙΔΙΟΚΤΗΤΩΝ</option>
            </select>
          <select name="ΚΑΤΗΓΟΡΙΑ2" id="ΚΑΤΗΓΟΡΙΑ2" class="update" disabled="disabled">
            <option value="ΘΥΡΩΡΟΣ" selected="selected">ΘΥΡΩΡΟΣ</option>
            <option value="ΕΙΔΗΚΑΘΑΡΙΟΤΗΤΑΣ" selected="selected">ΕΙΔΗ ΚΑΘΑΡΙΟΤΗΤΑΣ</option>
          </select>
        </label></td>
      </tr>

1 个答案:

答案 0 :(得分:1)

试试这个:代码注释足以自我解释

<?php 
$list1 = file("/path/to/options1.txt");/// read the first options list file

$selectedOption = $list1[0]; // default selected value is the first option as written in the code snipet above

if( isset($_GET["option1"]) && !empty( $_GET["option1"] ) ) {
    $selectedOption = urldecode( $_GET["option1"] ) ; // if the user changed the selection we update the second list
}

$list2 = file("/path/to/{$selectedOption}.txt");/// read the second options file based on the first element in the first list (since it will be the default selected value)

$currentUrl = "http://".$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI'];
?>

<script type="text/javascript">
    function load(){
        location.href = "<?php echo "$currentUrl";?>" + "?option1=" + document.getElementById("option1").value ;
    }
</script>

<tr>
        <td height="67" align="right">ΚΑΤΗΓΟΡΙΑ</td>
        <td><label>
          <select name="option1" id="option1" class="update" onchange="javascript:load()" >
            <?php
            foreach( $list1 as $_ ){
                $selected = "";
                if( trim( $selectedOption == trim( $_ ) ) )
                    $selected = "selected=\"selected\"";
                echo "<option value=\"". urlencode( $_ ) ."\" $selected >$_</option>\n";
            }
        ?>
        </select>

      <select name="option2" id="option2" class="update">
        <?php
            $selected = "selected=\"selected\"";
            foreach( $list2 as $_ ){
                echo "<option value=\"". urlencode( $_ ) ."\" $selected >$_</option>\n";
                $selected = ""; // only the first element will be marked as selected
            }
        ?>
      </select>
    </label></td>
  </tr>