【问题标题】:PHP , CODEIGNITER how to add from controller with hidden viewPHP,CODEIGNITER 如何从具有隐藏视图的控制器添加
【发布时间】:2017-10-17 07:07:29
【问题描述】:

我的问题是我的输入“类型”永远不会在数据库中发布,因为我没有在视图中提供输入类型(我希望我的类型的值由控制器/隐藏设置)...这是我的代码

控制器:

<?php
    public function addSmsCampaign() {
    if (isset($_POST['addSmsCampaign'])) {
        $this->form_validation->set_rules('campaign_name', 'campaign name', 'required|is_unique[campaigns.campaign_name]');
        $this->form_validation->set_rules('sequence_qty', 'sequence quantity', 'required|integer');
        $this->form_validation->set_rules('label_id', 'label id', 'required');
        $this->form_validation->set_rules('type', '', 'required');

    //if form validation true
        if ($this->form_validation->run() == TRUE) {
            $sms = 1;

            $newcampaign = [
                'campaign_name' => $_POST['campaign_name'],
                'sequence_qty' => $_POST['sequence_qty'],
                'label_id' => $_POST['label_id'],
                'type' => $this->input->post('type'),
                'created_at' => date('Y-m-d')
            ];
            $this->db->insert('campaigns', $newcampaign);
            redirect('userCont/sequenceform', 'refresh');
        }
    }
?>

这是我的观点:

<form action="" method="POST">
    <div class="form-group">    
        <label for="campaign_name">Input Campaign Title </label>
        <input type="text" class="form-control" name="campaign_name" id="name">
    </div>

    <div class="form-group">
        <label for="sequence_qty">Sequence qty </label>
        <input type="text" class="form-control" name="sequence_qty" id="qty">
        <input type="hidden" class="form-control" name="type" value="1">
    </div>

    <div class="form-group">
        <label for="label_id">Choose Category</label>

        <select class="form-control"  name="label_id" id="label_id">
            <?php
            foreach ($label_content as $e) {
                echo "<option value='$e->id;'>" . $e->label_name . "</option>";
            }
            ?>
        </select>
    </div>

    <div class="text-right">
        <button class="btn btn-primary form-control" value="1" name="addSmsCampaign type">next</button>
    </div><hr>
</form>

每次我发布类型的值都是默认值 = 0,我想将值设置为 1... 非常感谢

【问题讨论】:

  • html 中不需要包含 type 字段,只需在控制器中设置值即可
  • 每次我发布类型的值都是默认值 = 0,我想将值设置为 1 ???什么?解释你的问题
  • 我在我的控制器中编辑类型'type' => $this->input->post('type'),到这个'type' => '1',但值是还是0,这就是为什么我设置隐藏在视图中但仍然不起作用

标签: php database codeigniter controller


【解决方案1】:

尝试将名称从“类型”更改为数据库、控制器和视图中的其他名称

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-04-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多