【问题标题】:Insert multiple dimension array codeigniter插入多维数组codeigniter
【发布时间】:2021-03-07 19:53:58
【问题描述】:

从复选框插入数据数组时出现问题。我想像这样插入我的数据。这个表格是测验:

1 |你是什​​么颜色的? |红、蓝

2 |你几岁? | 17

我所有的问题都是数组,选项是复选框。我想内爆我的复选框答案。这是我的代码:

查看

<?php $i = 1;
foreach ($pertanyaan as $p) { ?>
    <input type="hidden" name="id_pertanyaan[]" value="<?= $p->id_pertanyaan ?>">
    <input type="hidden" name="kategori[]" value="<?php $p->kategori_id ?>">
    <p><?php echo $i;
        echo ". " . $p->isi ?></p>
    <?php $array = explode(';', $p->opsi_jawaban); ?>
    <?php foreach ($array as $a) {
        if ($p->kategori_id == 1) {
            if ($a != "") { ?>
                <div class="radio">
                    <input type="radio" name="jawaban[<?= $i ?>]" value="<?= $a ?>"> <?= $a ?>
                </div>
            <?php }
        } elseif ($p->kategori_id == 2) {
            if ($a != "") { ?>
                <table>
                    <tr>
                        <td>
                            <div class="form-group form-material">
                                <div class="checkbox-custom checkbox-primary">
                                    <input type="checkbox" name="jawaban[<?= $i ?>]" class="cek" data-fv-notempty="true" value="<?= $a ?>" data-fv-notempty-message="This is required">
                                    <label for="requiredCheckbox"><?= $a ?></label>
                                </div>
                            </div>
                        </td>
                        <td>
                            <div class="form-group form-material">
                                <?php if ($a == 'lainnya') { ?>
                                    <input type="text" name="lainnya" class="form-control">
                                <?php } ?>
                            </div>
                        </td>
                    </tr>
                </table>
            <?php }
        } else { ?>
            <div class="form-group form-material">
                <input type="text" name="jawaban[<?= $i ?>]" class="form-control">
            </div>
    <?php }
    } ?>
<?php $i++;
} ?>

控制器

$pertanyaanid = $_POST['id_pertanyaan'];
$jawaban = $_POST['jawaban'];
$now = date('Y-m-d H:i:s');
$this->load->database();
$id_investor = $this->db->insert_id();
$index = 1;
foreach ($pertanyaanid as $j) {
    $kat = $_POST['kategori'];
    if( $kat[$index] == 2)
    {
        $dataj = array(
            'pertanyaan_id' => $j,
            'jawaban' => $jawaban[$index],// trouble input
            'inv_id' => $id_investor,
            'created_at' => $now
        );
    }else 
    {
        $dataj = array(
            'pertanyaan_id' => $j,
            'jawaban' => $jawaban[$index],
            'inv_id' => $id_investor,
            'created_at' => $now
        );
    }
    $this->Survey_model->insertjawaban($dataj);  
    $index++;
}

你能帮我吗?或者你有我的问题的参考吗?因为我目前的情况只是这样插入:

1 |你是什​​么颜色的? |蓝色

2 |你几岁? | 17

这是我的图片表格:

【问题讨论】:

  • 请用图片描述您的问题。
  • 您的colorageloop 中并且您要插入它??
  • 你想插入任意一个单选按钮值和多个复选框值,那么它在哪里多维数组??
  • @KUMAR。我已经用图片更新了我的问题。我想像图片一样插入测验的答案。我的问题是当我插入第二个数据时,我只插入一个我只插入 hijau。如何插入第二个 tobe kuning, hijau
  • kuning, hijau 复选框都以逗号分隔值的形式插入到单列中是的,或者是一页中的一个问题或一页中的多个问题带有提交按钮?

标签: php mysql codeigniter multidimensional-array


【解决方案1】:

您的查看代码如下:-

您必须将所有单选框和复选框 name[] 作为这样的数组。

<?php 
   //sql Query.
  //execute Query.

 foreach($types as $key=>$value){?> 

<input type="radio" name="option1[$key]" value="A">A<br>

<br><br>


<label>
    <input type="checkbox"  value="<?php echo $value['name'] ?>"  name="option2[$key]" />
    <span class="text"><?php echo $value['name'] ?></span>
</label>

<?php } ?>

控制器代码:-

public function insertData(){

$option1 = $this->input->post('option1[]');
$option2= $this->input->post('option2[]');

var_dump($option1);
var_dump($option2);


for ($i = 0; $i < count($option2); $i++) {
   $data = array(
       'option1'=>$option1[$i],
       'option2'=> $option2[$i]);
       
   $this->db->insert('table_name',$data);
}

}

【讨论】:

  • 感谢您帮助我。很抱歉,也许我在这个论坛上错过了与我的问题相匹配的问题。但是有了你的回答,我两天前就有了一个想法,我已经解决了。谢谢
猜你喜欢
  • 2014-11-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-03-10
  • 1970-01-01
  • 2019-12-03
  • 2011-05-26
  • 1970-01-01
相关资源
最近更新 更多