Kết quả 1 đến 5 của 5
  1. #1
    CI Member truongnguyenhd's Avatar
    Ngày tham gia
    25-09-2013
    Bài viết
    75
    Cảm ơn
    2
    Được cảm ơn 7 trong 6 bài viết

    Unhappy Ai có thể hướng dẫn mình cách Export file excel bằn PHPExcel nhé!

    Mình hiện tại đang làm có có trang CI viết theo mô hình HMVC, giờ mình muốn thêm chức năng xuất file Excel ra bác nào rành thì hướng dẫn mình cách cài đặt + sử dụng được không
    Mình làm thêm trên mạng hướng dẫn toàn báo lỗi không tìm thấy class PHPExcel

  2. #2
    CI New mr.jade's Avatar
    Ngày tham gia
    31-05-2014
    Bài viết
    2
    Cảm ơn
    0
    Thanked 1 Time in 1 Post
    PHP Code:
    public function addexcell() {        $url '';        if ($this->input->post('dethi')) {            $url '?dethi=' . (int) $this->input->post('dethi');        }        if (!$this->request->files['files']['tmp_name']) {            $this->session->set_flashdata('message''Bạn chưa chọn file Excel. Vui lòng kiêm tra và thử lại!');            redirect('cauhoi' $url);        } else {            $id_made $this->input->post('id_made');            set_time_limit(0);            $this->load->library('phpexcel');            $file_path $_FILES['files']['tmp_name'];            $objReader PHPExcel_IOFactory::createReader('Excel5');            $objPHPExcel $objReader->load($file_path);            $rowIterator $objPHPExcel->getActiveSheet()->getRowIterator();            $count $error 0;            $i 0;            foreach ($rowIterator as $row) {                $data_hocsinh = array();                $cellIterator $row->getCellIterator();                $cellIterator->setIterateOnlyExistingCells(false); // Loop all cells, even if it is not set                $time = date('Y-m-d H:i:s');                $i++;                foreach ($cellIterator as $cell) {                    if ($i > 1) {                        if ('A' == $cell->getColumn()) {                            $data_hocsinh['noidung'] = $cell->getCalculatedValue() != null ? $cell->getCalculatedValue() : '';                        } else if ('B' == $cell->getColumn()) {                            $data_hocsinh['luachona'] = $cell->getCalculatedValue() != null ? $cell->getCalculatedValue() : '';                        } else if ('C' == $cell->getColumn()) {                            $data_hocsinh['luachonb'] = $cell->getCalculatedValue() != null ? $cell->getCalculatedValue() : '';                        } else if ('D' == $cell->getColumn()) {                            $data_hocsinh['luachonc'] = $cell->getCalculatedValue() != null ? $cell->getCalculatedValue() : '';                        } else if ('E' == $cell->getColumn()) {                            $data_hocsinh['luachond'] = $cell->getCalculatedValue() != null ? $cell->getCalculatedValue() : '';                        } else if ('F' == $cell->getColumn()) {                            $data_hocsinh['luachone'] = $cell->getCalculatedValue() != null ? $cell->getCalculatedValue() : '';                        } else if ('G' == $cell->getColumn()) {                            $data_hocsinh['dapan'] = $cell->getCalculatedValue() != null ? $cell->getCalculatedValue() : '';                        }                    }                }                $data_hocsinh['ngaythem'] = $time;                $data_hocsinh['id_made'] = $id_made;                if (!empty($data_hocsinh['noidung'])) {                    $this->cauhoi->luuExcel($data_hocsinh);                }            }            redirect('cauhoi' . $url);        }    } 
    Đây là đoạn xử lý lấy dữ liệu từ file excel vào của mình. Bạn cần phải tải thư viện PHPEXCEL về

  3. #3
    CI Member truongnguyenhd's Avatar
    Ngày tham gia
    25-09-2013
    Bài viết
    75
    Cảm ơn
    2
    Được cảm ơn 7 trong 6 bài viết
    Trích dẫn Gửi bởi mr.jade Xem bài viết
    PHP Code:
    public function addexcell() {        $url '';        if ($this->input->post('dethi')) {            $url '?dethi=' . (int) $this->input->post('dethi');        }        if (!$this->request->files['files']['tmp_name']) {            $this->session->set_flashdata('message''Bạn chưa chọn file Excel. Vui lòng kiêm tra và thử lại!');            redirect('cauhoi' $url);        } else {            $id_made $this->input->post('id_made');            set_time_limit(0);            $this->load->library('phpexcel');            $file_path $_FILES['files']['tmp_name'];            $objReader PHPExcel_IOFactory::createReader('Excel5');            $objPHPExcel $objReader->load($file_path);            $rowIterator $objPHPExcel->getActiveSheet()->getRowIterator();            $count $error 0;            $i 0;            foreach ($rowIterator as $row) {                $data_hocsinh = array();                $cellIterator $row->getCellIterator();                $cellIterator->setIterateOnlyExistingCells(false); // Loop all cells, even if it is not set                $time = date('Y-m-d H:i:s');                $i++;                foreach ($cellIterator as $cell) {                    if ($i > 1) {                        if ('A' == $cell->getColumn()) {                            $data_hocsinh['noidung'] = $cell->getCalculatedValue() != null ? $cell->getCalculatedValue() : '';                        } else if ('B' == $cell->getColumn()) {                            $data_hocsinh['luachona'] = $cell->getCalculatedValue() != null ? $cell->getCalculatedValue() : '';                        } else if ('C' == $cell->getColumn()) {                            $data_hocsinh['luachonb'] = $cell->getCalculatedValue() != null ? $cell->getCalculatedValue() : '';                        } else if ('D' == $cell->getColumn()) {                            $data_hocsinh['luachonc'] = $cell->getCalculatedValue() != null ? $cell->getCalculatedValue() : '';                        } else if ('E' == $cell->getColumn()) {                            $data_hocsinh['luachond'] = $cell->getCalculatedValue() != null ? $cell->getCalculatedValue() : '';                        } else if ('F' == $cell->getColumn()) {                            $data_hocsinh['luachone'] = $cell->getCalculatedValue() != null ? $cell->getCalculatedValue() : '';                        } else if ('G' == $cell->getColumn()) {                            $data_hocsinh['dapan'] = $cell->getCalculatedValue() != null ? $cell->getCalculatedValue() : '';                        }                    }                }                $data_hocsinh['ngaythem'] = $time;                $data_hocsinh['id_made'] = $id_made;                if (!empty($data_hocsinh['noidung'])) {                    $this->cauhoi->luuExcel($data_hocsinh);                }            }            redirect('cauhoi' . $url);        }    } 
    Đây là đoạn xử lý lấy dữ liệu từ file excel vào của mình. Bạn cần phải tải thư viện PHPEXCEL về
    Bạn có thể hướng dẫn cách sử dụng được không ?

  4. #4
    CI Member truongnguyenhd's Avatar
    Ngày tham gia
    25-09-2013
    Bài viết
    75
    Cảm ơn
    2
    Được cảm ơn 7 trong 6 bài viết
    Upppp!
    Có bác nào giúp mình đi

  5. #5
    CI Member anh2haui's Avatar
    Ngày tham gia
    20-12-2013
    Bài viết
    29
    Cảm ơn
    10
    Được cảm ơn 4 trong 3 bài viết
    Code basic:
    PHP Code:
    <?
    require 'class.php';
     include( 
    "includes/config_mysql.php" );
    //Ket noi CSDL

     
    //lay du lieu tu bang 
    $query "SELECT VUSER_NAME,VUSER_PWD from table";
            
    //truy vấn thôi
            
    if ( !( $result $db->Execute$query ) ) )
            {
                exit( 
    "Loi Query:".$result );
                
            }
    //số cột trong file exel cần xuất ra
            
    $data = array(array('taikhoan','matkhau'));
            
        while (
    $row $result->fetchrow() )
        {
        
    $data[]=array ($row[0],$row[1],$row[2],$row[3]); 
        }
     
    // generate file (constructor parameters are optional)
    $xls = new Excel_XML('UTF-8'false'Sheet 1');
    $xls->addArray($data);
    //tên file exel cần xuất
    $xls->generateXML('taikhoan');
     
    ?>
    File Class.php
    PHP Code:
    <?php
     
    /**
    * Simple excel generating from PHP5
    *
    * @package Utilities
    * @license http://www.opensource.org/licenses/mit-license.php
    * @author Oliver Schwarz <oliver.schwarz@gmail.com>
    * [USER=1768]version[/USER] 1.0
    */
     
    /**
    * Generating excel documents on-the-fly from PHP5
    *
    * Uses the excel XML-specification to generate a native
    * XML document, readable/processable by excel.
    *
    * @package Utilities
    * @subpackage Excel
    * @author Oliver Schwarz <oliver.schwarz@vaicon.de>
    * [USER=1768]version[/USER] 1.1
    *
    * @todo Issue #4: Internet Explorer 7 does not work well with the given header
    * @todo Add option to give out first line as header (bold text)
    * @todo Add option to give out last line as footer (bold text)
    * @todo Add option to write to file
    */
    class Excel_XML
    {
     
        
    /**
        * Header (of document)
        * @var string
        */
            
    private $header "<?xml version=\"1.0\" encoding=\"%s\"?\>\n<Workbook xmlns=\"urn:schemas-microsoft-com:office:spreadsheet\" xmlns:x=\"urn:schemas-microsoft-com:office:excel\" xmlns:ss=\"urn:schemas-microsoft-com:office:spreadsheet\" xmlns:html=\"http://www.w3.org/TR/REC-html40\">";
     
            
    /**
            * Footer (of document)
            * @var string
            */
            
    private $footer "</Workbook>";
     
            
    /**
            * Lines to output in the excel document
            * @var array
            */
            
    private $lines = array();
     
            
    /**
            * Used encoding
            * @var string
            */
            
    private $sEncoding;
           
            
    /**
            * Convert variable types
            * @var boolean
            */
            
    private $bConvertTypes;
           
            
    /**
            * Worksheet title
            * @var string
            */
            
    private $sWorksheetTitle;
     
            
    /**
            * Constructor
            *
            * The constructor allows the setting of some additional
            * parameters so that the library may be configured to
            * one's needs.
            *
            * On converting types:
            * When set to true, the library tries to identify the type of
            * the variable value and set the field specification for Excel
            * accordingly. Be careful with article numbers or postcodes
            * starting with a '0' (zero)!
            *
            * @param string $sEncoding Encoding to be used (defaults to UTF-8)
            * @param boolean $bConvertTypes Convert variables to field specification
            * @param string $sWorksheetTitle Title for the worksheet
            */
            
    public function __construct($sEncoding 'UTF-8'$bConvertTypes false$sWorksheetTitle 'Table1')
            {
                    
    $this->bConvertTypes $bConvertTypes;
                
    $this->setEncoding($sEncoding);
                
    $this->setWorksheetTitle($sWorksheetTitle);
            }
           
            
    /**
            * Set encoding
            * @param string Encoding type to set
            */
            
    public function setEncoding($sEncoding)
            {
                
    $this->sEncoding $sEncoding;
            }
     
            
    /**
            * Set worksheet title
            *
            * Strips out not allowed characters and trims the
            * title to a maximum length of 31.
            *
            * @param string $title Title for worksheet
            */
            
    public function setWorksheetTitle ($title)
            {
                    
    $title preg_replace ("/[\\\|:|\/|\?|\*|\[|\]]/"""$title);
                    
    $title substr ($title031);
                    
    $this->sWorksheetTitle $title;
            }
     
            
    /**
            * Add row
            *
            * Adds a single row to the document. If set to true, self::bConvertTypes
            * checks the type of variable and returns the specific field settings
            * for the cell.
            *
            * @param array $array One-dimensional array with row content
            */
            
    private function addRow ($array)
            {
                
    $cells "";
                    foreach (
    $array as $k => $v):
                            
    $type 'String';
                            if (
    $this->bConvertTypes === true && is_numeric($v)):
                                    
    $type 'Number';
                            endif;
                            
    $v htmlentities($vENT_COMPAT$this->sEncoding);
                            
    $cells .= "<Cell><Data ss:Type=\"$type\">" $v "</Data></Cell>\n";
                    endforeach;
                    
    $this->lines[] = "<Row>\n" $cells "</Row>\n";
            }
     
            
    /**
            * Add an array to the document
            * @param array 2-dimensional array
            */
            
    public function addArray ($array)
            {
                    foreach (
    $array as $k => $v)
                            
    $this->addRow ($v);
            }
     
     
            
    /**
            * Generate the excel file
            * @param string $filename Name of excel file to generate (...xls)
            */
            
    public function generateXML ($filename 'excel-export')
            {
                    
    // correct/validate filename
                    
    $filename preg_replace('/[^aA-zZ0-9\_\-]/'''$filename);
           
                    
    // deliver header (as recommended in php manual)
                    
    header("Content-Type: application/vnd.ms-excel; charset=" $this->sEncoding);
                    
    header("Content-Disposition: inline; filename=\"" $filename ".xls\"");
     
                    
    // print out document to the browser
                    // need to use stripslashes for the damn ">"
                    
    echo stripslashes (sprintf($this->header$this->sEncoding));
                    echo 
    "\n<Worksheet ss:Name=\"" $this->sWorksheetTitle "\">\n<Table>\n";
                    foreach (
    $this->lines as $line)
                            echo 
    $line;
     
                    echo 
    "</Table>\n</Worksheet>\n";
                    echo 
    $this->footer;
            }
     
    }
     
    ?>
    Còn file con_fig là phần connect DB thôi.Bạn chuyển sang CI là sài đc.Có thể tạo thêm 1 Library mới từ file Class.php rồi gọi ra dùng cũng đc.

Chia sẽ và Bình Luận chủ đề Ai có thể hướng dẫn mình cách Export file excel bằn PHPExcel nhé! trên facebook

Các Chủ đề tương tự

  1. Export MYSQL ra file excel có định dạng
    Bởi ci_long trong diễn đàn Hỏi đáp
    Trả lời: 8
    Bài cuối: 14-05-2013, 10:33 PM
  2. Trả lời: 0
    Bài cuối: 27-03-2013, 03:37 PM

Các từ khóa xuất hiện trên google của chủ đề

Chưa có từ khóa lên top google

Tag của Chủ đề này - Hãy Thêm Tags Để bài viết nhanh lên top google

Quyền viết bài

  • Bạn không thể đăng chủ đề mới
  • Bạn không thể gửi trả lời
  • Bạn không thể gửi đính kèm
  • Bạn không thể sửa bài
  •