Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.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_Codeigniter - Fatal编程技术网

Php 如何在其他页面中显示选项值

Php 如何在其他页面中显示选项值,php,codeigniter,Php,Codeigniter,我有一个下拉框,其中的某个名称在一个页面上被选中,并正确保存在数据库中。但是当我试图编辑页面时,我得到了除了下拉框(在“nothing selected”选项中)之外的所有值。我的代码需要做哪些更改? 设计规范: <option value="select"></option> <?php foreach ($PName as $row ): ?> <option value="<?=$row['pcode']?>" <?ph

我有一个下拉框,其中的某个名称在一个页面上被选中,并正确保存在数据库中。但是当我试图编辑页面时,我得到了除了下拉框(在“nothing selected”选项中)之外的所有值。我的代码需要做哪些更改? 设计规范:

<option value="select"></option>
<?php foreach ($PName as $row ): ?> 
    <option value="<?=$row['pcode']?>" <?php echo set_select('PName', $row['pcode']); ?>> 
        <?=$row['PName']?></option> 

    <?php endforeach ?>

如果您想获得所有值,而不考虑它们的选择,我建议使用一个隐藏字段:

<form ...>
    <input type="hidden" name="pcodes" value="<?=implode(',',array_column($PName,'pcode'))?>"/>
    <select>...


试试这个,这里的诀窍是你必须传递set_select()的第一个参数select标记的名称,在你的例子中它是'PName'

    <select id="PName" name="PName">
        <?php 
           foreach ($PName as $row ): 
        ?> 
          <option value="<?=$row['pcode']?>" <?php echo set_select('PName', $row['pcode'], False); ?>> 
                 <?=$row['PName']?>
          </option> 

        <?php endforeach ?>
    </select>

尝试:

---

假设表中的
PName
字段具有产品名称且类型为String,则不应将其与$row['pcode']进行比较,后者假定具有不同的值。
    <select id="PName" name="PName">
        <?php 
           foreach ($PName as $row ): 
        ?> 
          <option value="<?=$row['pcode']?>" <?php echo set_select('PName', $row['pcode'], False); ?>> 
                 <?=$row['PName']?>
          </option> 

        <?php endforeach ?>
    </select>
      <option value="">---</option>
 <?php $selected = ($row['pcode'] == your selected data ) ? true : false; ?>
      <?php foreach ($PName as $row ): ?> 
      <option value="<?=$row['pcode']?>" <?php set_select('PName', $row['pcode'], $selected);  ?>> 
                <?=$row['PName']?>
      </option> 
<?php endforeach ?>