Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP订单,重新填充“;精选;下拉列表_Php_Html_Arrays_Foreach - Fatal编程技术网

PHP订单,重新填充“;精选;下拉列表

PHP订单,重新填充“;精选;下拉列表,php,html,arrays,foreach,Php,Html,Arrays,Foreach,希望这个标题能真正描述这个问题 在3个步骤中获得一个表单,用户可以从步骤2到步骤1更改详细信息 到目前为止,除了多个选择下拉列表外,每个输入都在完全重新填充 我一直在尝试在数组的foreach()中使用switch(),但是当它与第一个案例匹配时,它似乎停止了。我改变了break至继续但存在相同的行为 数组由2组合而成,$key为项目编号,$value为项目值 每个foreach()项目$value完美输出一次 有人有什么想法吗 foreach($combined as $key =&g

希望这个标题能真正描述这个问题

在3个步骤中获得一个表单,用户可以从步骤2到步骤1更改详细信息

到目前为止,除了多个选择下拉列表外,每个输入都在完全重新填充

我一直在尝试在数组的
foreach()
中使用
switch()
,但是当它与第一个案例匹配时,它似乎停止了。我改变了
break
继续但存在相同的行为

数组由2组合而成,
$key
为项目编号,
$value
为项目值

每个
foreach()
项目
$value
完美输出一次

有人有什么想法吗

    foreach($combined as $key => $value) {
           //firstload is only valid on first load
                  if($value != firstload) {

                    switch($value){
                    case "1":
                       $selected0 = "selected=\"selected\"";
                       break;
                    case "5.00":
                       $selected1 = "selected=\"selected\"";
                       break;
                    case "10.00":
                       $selected2 = "selected=\"selected\"";
                       break;
                    case "45.00":
                       $selected3 = "selected=\"selected\"";
                       break;
                    case "85.00":
                       $selected4 = "selected=\"selected\"";
                       break;
                                        }

然后HTML选择选项
我不确定这是否对您有帮助,因为没有代码可供处理-但这里有一个想法,您可以根据需要重新编写

<select name="mySelect" multiple="multiple">
<?php
    // Could come from sessions or POST data
    $selected_array = array("1", "10.00", "85.00");

    // Could come from database or something else
    $multiple_select_values = array("1", "5.00", "10.00", "45.00", "85.00");

    foreach($multiple_select_values as $value) {
        $selected = "";
        if(in_array($value, $selected_array))
            $selected = " selected=\"selected\"";

        echo '<option value="'. $value . '"' . $selected. '>' . $value .'</option>';
    }
?>
</select>


我们可以看到确切的代码片段吗?您应该发布您的代码-只发布相关部分,最好是注释,我相信有人会帮助您我想我们需要更多的代码。因为这段代码实际上没有问题,除了缺少结尾
}
,但我假设这是一个打字错误。这是一个很难解释的问题。switch()匹配多次,因此有多个选项被赋予attr selected。感谢您这么做,我似乎很难解释这个问题。我已经用
elseif
让它工作了,但它并不漂亮。再次感谢。