user7047368
user7047368

Reputation: 167

Not able to fetch the multiselect ids into array and inserting into database in codeigniter php

Hi i am using a multiselect dropdown for selecting the multiple categories multiselect is working fine but while printing in an array it is displaying only last id.Not getting all the selected records in an array.

View:

<div class="element">
        <label for="categoryname"><font color="black">Category Name</font></label>
        <?php
            $categorylist['']='--Select Category Name--';
            $category_id="id='category_id[]'  multiple='multiple' ";
            if($this->input->post('category_id')) $selected=$this->input->post('category_id');else $selected='';
            echo form_dropdown('category_id',$categorylist,$selected,$category_id);
        ?>
        <?php echo form_error('category_id', '<div class="error">', '</div>'); ?><br/><br/>     
    </div>

Model:

function insertblogs()
{
    $options = $this->input->post('category_id');
    $array = explode(",", $options);
    print_r($array);
    exit();
    $data=array(
    'category_id'=>$array,
    'blog_title'=>$this->input->post('blog_title'),
    'description'=>$this->input->post('description'),
    'position'=>$this->input->post('position')
    );
    $this->db->insert('blogs',$data);

Upvotes: 1

Views: 43

Answers (1)

user7047368
user7047368

Reputation: 167

Model:

function insertblogs()
{
    $options = $this->input->post('category_id');
    $array = implode(",", $options);

    $data=array(
    'category_id'=>$array,
    'blog_title'=>$this->input->post('blog_title'),
    'description'=>$this->input->post('description'),
    'position'=>$this->input->post('position')
    );
     if ( $_FILES AND $_FILES['image_path']['name'])
            {
                $file_name = $this->do_upload2();
                if(is_array($file_name)){
                    $error['imageerror'] = $file_name['error'];
                }
                else
                $data['image_path']=$file_name;
            }
            if(!isset($data['image_path']) && !isset($error['imageerror']))

        $error['imageerror'] ="Please Upload an image";

    if(isset($error))return $error;
   print_r($data);
        $this->db->insert('blogs',$data);

   }

View:

<div class="element">
        <label for="categoryname"><font color="black">Category Name</font></label>
        <?php
            $categorylist['']='--Select Category Name--';
            $category_id="id='category_id[]'  multiple='multiple' ";
            if($this->input->post('category_id')) $selected=$this->input->post('category_id');else $selected='';
            echo form_multiselect('category_id[]',$categorylist,$selected,$category_id);

        ?>
        <?php echo form_error('category_id', '<div class="error">', '</div>'); ?><br/><br/>     
    </div>

Upvotes: 0

Related Questions