首页 文章

处理来自codeigniter中的视图的数组输入

提问于
浏览
0

在我的库存应用程序中,我的一个视图以数组形式发送多个产品信息,并向控制器发送一些简单的输入,然后传递给模型以存储在名为orders和product的多个数据库表中 . 我知道如何通过将数组传递给模型函数来处理普通输入 .

function add_record($data);

但我想知道如何处理控制器中的简单输入的数组输入,以将它们发送到模型?

in my view:

<select class="form-control" name="vendor" id="vendor">
   <option value="">Place order to</option>
   <?php foreach ($vendors as $val=>$vendor) { ?>
   <option value="<?php echo $val; ?>"><?php echo $vendor;?></option>
   <?php };?>
</select>
<table>
   <tbody class="detail">
      <tr>
         <td class="no">1</td>
         <td>
            <!-- <input type="text" class="form-control productname" name="productname[]"> -->
            <select class="form-control productname" name="productname[]">
               <option value="">Select Product</option>
               <?php foreach($products as $val => $product){ ?>
               <option value="<?php echo $val;?>"><?php echo $product;?></option>
               <?php } ?>
            </select>
         </td>

并且在提交时我将它们传递给控制器 addorder/createOrder ,即创建addorder控制器的命令功能 .

1 回答

  • 0

    如果要将值存储在不同的行中,请使用此选项

    foreach($this->input->post("productname") as $row) {
        $productId = $row;
        // insert product id to database
    }
    

    如果要使用逗号( , )分隔存储,请使用此选项

    $priductId = implode(",",$this->input->post("productname"));
        // insert product id's to database
    

    要取回产品ID的使用

    explode(",",$variabl from database);// will get array
    

    您也可以使用 json_encode() 并以json格式存储

    $priductId = json_encode($this->input->post("productname"));
        // insert product id's to database
    

    要取回产品ID的使用

    json_decode($variabl from database);// will get array
    

相关问题