CoderFunda
  • Home
  • About us
    • Contact Us
    • Disclaimer
    • Privacy Policy
    • About us
  • Home
  • Php
  • HTML
  • CSS
  • JavaScript
    • JavaScript
    • Jquery
    • JqueryUI
    • Stock
  • SQL
  • Vue.Js
  • Python
  • Wordpress
  • C++
    • C++
    • C
  • Laravel
    • Laravel
      • Overview
      • Namespaces
      • Middleware
      • Routing
      • Configuration
      • Application Structure
      • Installation
    • Overview
  • DBMS
    • DBMS
      • PL/SQL
      • SQLite
      • MongoDB
      • Cassandra
      • MySQL
      • Oracle
      • CouchDB
      • Neo4j
      • DB2
      • Quiz
    • Overview
  • Entertainment
    • TV Series Update
    • Movie Review
    • Movie Review
  • More
    • Vue. Js
    • Php Question
    • Php Interview Question
    • Laravel Interview Question
    • SQL Interview Question
    • IAS Interview Question
    • PCS Interview Question
    • Technology
    • Other

10 January, 2020

Import/Upload Excel file into MySQL using Codeigniter

 Programing Coderfunda     January 10, 2020     CodeIgniter - Import, CodeIgniter - Upload/Excel     No comments   

On this codeigniter excel,csv import tutorial, we will would really like to share with you the way to import records as excel or csv report format in codeigniter. Excel and csv is the pleasant technique to import facts in a report and you may effortlessly import records to excel or csv using codeigniter excel library.

====>> Codeigniter Import Excel,CSV <<====

Contents.....

Download Codeigniter Latest
Basic Configurations
Download phpExcel Library
Create Library
Create Database With Table
Setup Database Credentials
Make New Controller
Create model
Create Views
Start Development server
Conclusion


Step 1:- First, we need to download  PHPExcel Library. Then extract PHPExcel Library inside “application/third_party” folder.

Download  PHPExcel Library

Step 2:- Create database and table or  copy below code and run in mysql for create table



CREATE TABLE `organization` (
  `id` int(10) NOT NULL,
  `org_name` varchar(150) NOT NULL,
  `org_code` int(50) NOT NULL,
  `gst_no` varchar(200) NOT NULL,
  `org_type` varchar(50) NOT NULL,
  `Address` varchar(40) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;


Step 3:- Now create controller file Import.php and copy below code and paste in import.php file.

<?php 

defined('BASEPATH') OR exit('No direct script access allowed'); 
 
class Import extends CI_Controller { 

function __construct() {
        parent::__construct();
        $this->load->database();
        $this->load->model('import_model', 'import');
    }
     

  public function uploadCsv(){
   
    $this->load->view('upload');
  }
  public function uploadData(){

  if ($this->input->post('submit')) {
           
            $path = 'uploads/';
            require_once APPPATH . "/third_party/PHPExcel.php";
            $config['upload_path'] = $path;
            $config['allowed_types'] = 'xlsx|xls';
            $config['remove_spaces'] = TRUE;
            $this->load->library('upload', $config);
            $this->upload->initialize($config);           
            if (!$this->upload->do_upload('uploadFile')) {
                $error = array('error' => $this->upload->display_errors());
            } else {
                $data = array('upload_data' => $this->upload->data());
            }
            if(empty($error)){
              if (!empty($data['upload_data']['file_name'])) {
                $import_xls_file = $data['upload_data']['file_name'];
            } else {
                $import_xls_file = 0;
            }
            $inputFileName = $path . $import_xls_file;
           
            try {
                $inputFileType = PHPExcel_IOFactory::identify($inputFileName);
                $objReader = PHPExcel_IOFactory::createReader($inputFileType);
                $objPHPExcel = $objReader->load($inputFileName);
                $allDataInSheet = $objPHPExcel->getActiveSheet()->toArray(null, true, true, true);
                $flag = true;
                $i=0;
                foreach ($allDataInSheet as $value) {
                  if($flag){
                    $flag =false;
                    continue;
                  }
                  $inserdata[$i]['org_name'] = $value['A'];
                  $inserdata[$i]['org_code'] = $value['B'];
                  $inserdata[$i]['gst_no'] = $value['C'];
                  $inserdata[$i]['org_type'] = $value['D'];
                  $inserdata[$i]['Address'] = $value['E'];
                  $i++;
                }             
                $result = $this->import->importdata($inserdata); 
                if($result){
                  echo "Imported successfully";
                }else{
                  echo "ERROR !";
                }           

          } catch (Exception $e) {
               die('Error loading file "' . pathinfo($inputFileName, PATHINFO_BASENAME)
                        . '": ' .$e->getMessage());
            }
          }else{
              echo $error['error'];
            }
           
           
    }
    $this->load->view('upload');
  }
}
?>



Step 4:- Now create import_model.php inside model folder and copy below code and paste in import_model.php


<?php

if (!defined('BASEPATH'))
    exit('No direct script access allowed');

class Import_model extends CI_Model {

    public function importData($data) {

        $res = $this->db->insert_batch('organization',$data);
        if($res){
            return TRUE;
        }else{
            return FALSE;
        }

    }

}


?>


Step 5:- Now create view file inside view folder and copy below code and paste in upload.php file

<form action="<?php echo base_url();?>form/uploadData" method="post" enctype="multipart/form-data">
    Upload excel file :
    <input type="file" name="uploadFile" value="" /><br><br>
    <input type="submit" name="submit" value="Upload" />
</form>



Note : You can use without Excelfile Library

  • Share This:  
  •  Facebook
  •  Twitter
  •  Google+
  •  Stumble
  •  Digg
Email ThisBlogThis!Share to XShare to Facebook
Newer Post Older Post Home

0 comments:

Post a Comment

Thanks

Meta

Popular Posts

  • How to monitor process status during process lifetime
    I need to track the process status ps axf during executable lifetime. Let's say I have executable main.exec and want to store into a fi...
  • Use Flags For Countries & Languages in Laravel Blade Views
      Blade Flags   is a package to efficiently use   TwEmoji Countries & Languages Flags   in your Laravel Blade views. You can use it easi...
  • How to Run a Python File on a Specific Virtual Desktop Only?
    I want to run a Python script on a specific virtual desktop without affecting other desktops. Currently, when I execute my Python file us...
  • Encrypt Database Values in Laravel with DB Encrypter
      Laravel DB Encrypter is a package by   Daniel Częstki   that automatically encrypts and decrypts values stored in database fields. It uses...
  • Different output in VisualStudio and Codeblocks
    I need a linear interpolation in 2D array. The output in Codeblocks is correct, but in VisualStudio is not. I got 2 main functions. ...

Categories

  • Ajax (26)
  • Bootstrap (30)
  • DBMS (42)
  • HTML (12)
  • HTML5 (45)
  • JavaScript (10)
  • Jquery (34)
  • Jquery UI (2)
  • JqueryUI (32)
  • Laravel (1017)
  • Laravel Tutorials (23)
  • Laravel-Question (6)
  • Magento (9)
  • Magento 2 (95)
  • MariaDB (1)
  • MySql Tutorial (2)
  • PHP-Interview-Questions (3)
  • Php Question (13)
  • Python (36)
  • RDBMS (13)
  • SQL Tutorial (79)
  • Vue.js Tutorial (69)
  • Wordpress (150)
  • Wordpress Theme (3)
  • codeigniter (108)
  • oops (4)
  • php (853)

Social Media Links

  • Follow on Twitter
  • Like on Facebook
  • Subscribe on Youtube
  • Follow on Instagram

Pages

  • Home
  • Contact Us
  • Privacy Policy
  • About us

Blog Archive

  • July (4)
  • September (100)
  • August (50)
  • July (56)
  • June (46)
  • May (59)
  • April (50)
  • March (60)
  • February (42)
  • January (53)
  • December (58)
  • November (61)
  • October (39)
  • September (36)
  • August (36)
  • July (34)
  • June (34)
  • May (36)
  • April (29)
  • March (82)
  • February (1)
  • January (8)
  • December (14)
  • November (41)
  • October (13)
  • September (5)
  • August (48)
  • July (9)
  • June (6)
  • May (119)
  • April (259)
  • March (122)
  • February (368)
  • January (33)
  • October (2)
  • July (11)
  • June (29)
  • May (25)
  • April (168)
  • March (93)
  • February (60)
  • January (28)
  • December (195)
  • November (24)
  • October (40)
  • September (55)
  • August (6)
  • July (48)
  • May (2)
  • January (2)
  • July (6)
  • June (6)
  • February (17)
  • January (69)
  • December (122)
  • November (56)
  • October (92)
  • September (76)
  • August (6)

Loading...

Laravel News

Loading...

Copyright © CoderFunda | Powered by Blogger
Design by Coderfunda | Blogger Theme by Coderfunda | Distributed By Coderfunda