用php下拉选择框

用php下拉选择框,php,select,combobox,Php,Select,Combobox,我编写了一些php来提供一个选择框。出于某种原因,它拒绝选择正确的选项。当我直接尝试HTML时,它可以工作。检查一下我没有做什么蠢事。我复制了生成的代码,他们把代码放在生成和html中 <dd> <select id="jform_my_foreign_key" class="inputbox " name="jform[my_foreign_key]" size="1"> <option value="">- Select Order title

我编写了一些php来提供一个选择框。出于某种原因,它拒绝选择正确的选项。当我直接尝试HTML时,它可以工作。检查一下我没有做什么蠢事。我复制了生成的代码,他们把代码放在生成和html中

<dd>
  <select id="jform_my_foreign_key" class="inputbox " name="jform[my_foreign_key]" size="1">
   <option value="">- Select Order title -</option>
   <option value="13">00000013</option>
   <option value="12">00000012</option>
   <option value="9" selected="selected">00000009</option>
   <option value="8">00000008</option>
   <option value="7">00000001</option>
</select>
  </dd>

<select id="jform_my_foreign_key" class="inputbox " size="1" name="jform[my_foreign_key]">
   <option value="">- Select Order title -</option>
   <option value="13">00000013</option>
   <option value="12">00000012</option>
   <option selected="selected" value="9">00000009</option>
   <option value="8">00000008</option>
   <option value="7">00000001</option>
</select>

-选择订单标题-
00000013
00000012
00000009
00000008
00000001
-选择订单标题-
00000013
00000012
00000009
00000008
00000001
顶部是由php代码生成的,底部是将html直接放入 页面

使用的代码是:

<dd><select id="jform_my_foreign_key" class="inputbox " size="1" name="jform[my_foreign_key]">
  <option value="">- Select Order title -</option>

<?php
                for($x=0;$x<count($ordersAvailableHoldingArray);$x+=2){
  if($ordersUseHoldingArray[0] ==$ordersAvailableHoldingArray[$x+1]){
$selected ="selected='selected'";
  }else{
$selected ="";
}
echo '<option '.$selected.' value="'.$ordersAvailableHoldingArray[$x].'">'.$ordersAvailableHoldingArray[$x+1].'</option>';
}
?>

  </select></dd>

-选择订单标题-

我不明白为什么它不起作用,我觉得它很合适。从哪里开始调试的任何帮助都会很好

您最好使用foreach将键和值放入select中,如下例所示

<form action="" method="post">

<select id="jform_my_foreign_key" class="inputbox" name="jform[my_foreign_key]"  size="1">
<option value="">- Select Order title -</option>
            <?php 

            $data_for_select = array(13=>'00000013',12=>'00000012',9=>'0000009');

            foreach($data_for_select as $k=>$v)
            { 
            if($k==$_POST['jform']['my_foreign_key'])
            {
                echo "<option value=\"$k\" selected=\"selected\">$v</option>";
                }
            else
            {
                echo "<option value=\"$k\">$v</option>";
                } 
            } 
            ?>
            </select>

<input name="jello" type="submit" value="send">
</form>

-选择订单标题-

请在问题中添加一个
var\u dump($ordersAvailableHoldingArray)
好吗?在
for($x=0;$x)中有什么问题吗?两个HTML片段基本上是等效的,它们对我来说都很好。我是否遗漏了明显的部分?我想我也遗漏了“明显的部分”.
@OP
,发布真正起作用的代码。我从来没有出现在读心术课上。这可能与Joomla有关吗?我问这个问题,因为你所有的其他问题都是基于Joomla的。我相信OP很清楚这一点。如果你再仔细研究一下这个问题,你会发现他的HTML是正确的“动态生成”。所以你的答案是无效的。仅供参考:如果你被
否决
,我不会这么做。但我会重新考虑你的答案。干杯。什么是
$ordersUseHoldingArray[0]
$ordersAvailableHoldingArray[$x+1]
因为它们是答案的关键。它们存储了什么,以及我所想的是如何存储的
$\u POST['jform']['my\u foreign\u key'==$ordersUseHoldingArray[0]
$\u POST['jform']['my\u foreign\u key']==$ordersUseHoldingArray[0]
老实说我不知道。我不知道OP的代码是从哪里来的。但我肯定他没有向我们展示他的全部来源。就我个人而言,我认为这个问题(OP)已经悬而未决。放弃吧。