403Webshell
Server IP : 14.225.204.176  /  Your IP : 216.73.216.169
Web Server : nginx/1.24.0
System : Linux nodejs-ybgk 6.8.0-40-generic #40-Ubuntu SMP PREEMPT_DYNAMIC Fri Jul 5 10:34:03 UTC 2024 x86_64
User : root ( 0)
PHP Version : 8.1.34
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : OFF
Directory :  /var/www/html/php/mmobot/app/libraries/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /var/www/html/php/mmobot/app/libraries/Phpspreadsheet_lib.php
<?php
defined('BASEPATH') OR exit('No direct script access allowed');

require 'Phpspreadsheet/vendor/autoload.php';
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;

class Phpspreadsheet_lib {

	private $header_col;
	
	public function __construct() {
		$this->header_col = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'];
	}

	public function export_excel($columns = array(), $data = array(), $filename =''){
		$spreadsheet = new Spreadsheet();
        $sheet = $spreadsheet->getActiveSheet()->setTitle($filename);
        $count_cols = count($columns);
        
        // get Table Header
        $i = 0;
        foreach ($columns as $value) {

        	if ($i < $count_cols) {
        		$sheet->setCellValue($this->header_col[$i].'1', $value);
        	}else{
        		break;
        	}

        	$i++;
        }
        // Get table content
        $num_row = 2;
        foreach ($data as $key => $row) {
    		$j = 0;
	    	foreach ($columns as $value) {
	    		if ($j < $count_cols) {
	        		$sheet->setCellValue($this->header_col[$j].$num_row , $row->$value);
	    			$j++;
	        	}else{
	        		break;
        		}
		  	}
	    	$num_row++;
		}
        $writer = new Xlsx($spreadsheet);
        header('Content-Type: application/vnd.ms-excel');
        header('Content-Disposition: attachment;filename="'. $filename .'"'); 
        header('Cache-Control: max-age=0');
        $writer->save('php://output'); 
	}

	public function export_csv($columns = array(), $data = array(), $filename =''){
		$spreadsheet = new Spreadsheet();
        $sheet = $spreadsheet->getActiveSheet()->setTitle($filename);
        $count_cols = count($columns);
        
        // get Table Header
        $i = 0;
        foreach ($columns as $value) {

        	if ($i < $count_cols) {
        		$sheet->setCellValue($this->header_col[$i].'1', $value);
        	}else{
        		break;
        	}

        	$i++;
        }
        // Get table content
        $num_row = 2;
        foreach ($data as $key => $row) {
    		$j = 0;
	    	foreach ($columns as $value) {
	    		if ($j < $count_cols) {
	        		$sheet->setCellValue($this->header_col[$j].$num_row , $row->$value);
	    			$j++;
	        	}else{
	        		break;
        		}
		  	}
	    	$num_row++;
		}
        $writer = new \PhpOffice\PhpSpreadsheet\Writer\Csv($spreadsheet);
		$writer->setDelimiter(',');
		$writer->setEnclosure('"');
		$writer->setLineEnding("\r\n");
		$writer->setSheetIndex(0);

		$writer->save($filename);
        header('Content-Type: application/vnd.ms-excel');
        header('Content-Disposition: attachment;filename="'. $filename .'"'); 
        header('Cache-Control: max-age=0');
        $writer->save('php://output'); 
	}

}

Youez - 2016 - github.com/yon3zu
LinuXploit