csv upload by php

1st step: 

 <li role="presentation" class="inactive-nav-pill"> <a   onclick="showAjaxModal('<?php echo site_url('donor/popup/csvform');?>');"
                   > <i class="fa fa-plus" aria-hidden="true"></i>CSV File </a>
            </li>




2nd step : 

<div class="row">
    <div class="col-md-12">
        <div class="panel panel-primary" data-collapsed="0">
            <div class="panel-heading">
                <div class="panel-title">
                    <i class="entypo-plus-circled"></i>
                    CSV Insert
                </div>
            </div>
            <div class="panel-body">
            <?php echo form_open(site_url('donor/donarExcelDataInsert/') , array('class' => 'form form-horizontal form-groups-bordered validate', 'enctype' => 'multipart/form-data'));?>
                     
                <div class="col-md-12">
                    <div class="form-group">
                        <div class="col-md-12">
                            <label class="control-label">Browse File</label>
                            <input type="file" name="userfile" class="form-control">
                        </div>
                    </div>
                    <div class="form-group">
                        <div class="col-md-6 " style="margin-top:10px;">
                            <button type="submit" name="uploadfile" class="btn btn-success">Import</button>
                        </div>
                        <div class="col-md-6 pull-right" style="margin-top:10px;">
                            <a href="<?php echo base_url()?>src/assets/excel/donarSample.csv"
                                class="btn btn-primary">
                                <i class="glyphicon glyphicon-glyphicon-download-alt"></i>
                                Sample Download</a>
                        </div>
                    </div>
                </div>
                 
                <?php echo form_close();?>
            </div>

        </div>
    </div>
</div>
<script type="text/javascript">
$('.input-group.date').datepicker({
    autoclose: true,
    todayHighlight: true,
    format: 'dd/mm/yyyy',
});
</script>




3rd step :  


function donarExcelDataInsert(){
    if(!empty($_FILES['userfile']['name'])){
        $newFileName = $_FILES['userfile']['name'];
        $fileExt= substr($newFileName, strrpos($newFileName,'.')+1) ;
        if($fileExt == 'csv' or $fileExt == 'CSV'){
          $fh = fopen($_FILES['userfile']['tmp_name'], 'r+');
          $lines = array();
          while(( $row = fgetcsv($fh, 819234)) !== false)
          {
            $lines[] = $row;
            }
         
          $splicearray = array_splice($lines, 0, 1);
        //   echo  '<pre>';
        //   print_r($splicearray);
        //   die;
          if(!empty($lines))
            {
                foreach($lines as $key=> $value)
                    {
                        $dob=strtotime(str_replace('/', '-', $value[21])) + 21600;
                        $lbd=strtotime(str_replace('/', '-', $value[22])) + 21600;
                        if(!empty($value[8]))
                        {
   
                            $data['name'] = $value[0];
                            $data['password'] = sha1($value[1]);
                            $data['doner_image'] =$value[2];
                            $data['blood_group'] = $value[3];
                            $data['donation_count'] = $value[4];
                            $data['type'] = $value[5];
                            $data['program'] = $value[6];
                            $data['institute'] = $value[7];
                            $data['reg_code'] = $value[8];
                            $data['category'] = $value[9];
                            $data['national_id'] = $value[10];
                            $data['title'] = $value[11];
                            $data['gender'] =$value[12];
                            $data['age'] =$value[13];
                            $data['weight'] = $value[14];
                            $data['marital_status'] = $value[15];
                            $data['father_name'] = $value[16];
                            $data['mother_name'] = $value[17];
                            $data['spouse_name'] = $value[18];
                            $data['occupation'] = $value[19];
                            $data['religion'] = $value[20];                  
                            $data['dob'] = $dob;
                            $data['ldd']    =$lbd;
                            $data['address']    = $value[23];                  
                            $data['district'] =$value[24];
                            $data['thana'] = $value[25];                    
                            $data['phone_no'] = $value[26];
                            $data['email']    =$value[27];
                            $data['status']    = $value[28];                    
                            $data['added_at'] =$value[29];
                            $data['uploaded_by'] =$value[30];  
                       
                                /*  product  update and insert  */
                                $queryDonar = $this->db->query("SELECT  * FROM donor where reg_code = '{$value[8]}'");
                                $donardata = $queryDonar->row_array();

                                // echo  '<pre>';
                                // print_r($donardata);
                                // die;
                                if(!empty($donardata)){
                                    $this->db->where('id', $donardata['id']);
                                    $this->db->update('donor', $data);
                                }else{
                                    $this->db->insert('donor', $data);
                                }
                   
                      }
                  }
                }
            }
                $sdataa['success_msg'] = '<div class="alert alert-success fade in" style="margin-top:18px;">
                <a href="#" class="close" data-dismiss="alert" aria-label="close" title="close">×</a>
                <strong>Success </strong> CSV file Import </div>';
                $this->session->set_userdata($sdataa);
                redirect(base_url('donor'), 'refresh');
        }else{
                $sdataa['success_msg'] = '<div class="alert alert-danger fade in" style="margin-top:18px;">
                  <a href="#" class="close" data-dismiss="alert" aria-label="close" title="close">×</a>
                  <strong>Warning </strong> Please upload CSV file only </div>';
                $this->session->set_userdata($sdataa);
                redirect(base_url('donor'), 'refresh');
            }  
}


Comments

Popular posts from this blog

date wise search codeigniter

all customer due sql query