HEX
Server: Apache/2.4.6 (CentOS) mpm-itk/2.4.7-04 mod_fcgid/2.3.9 PHP/5.4.16
System: Linux dvm.vladweb.ru 3.10.0-1160.119.1.el7.x86_64 #1 SMP Tue Jun 4 14:43:51 UTC 2024 x86_64
User: region-gk.ru (1016)
PHP: 7.3.33
Disabled: NONE
Upload Files
File: /home/temp/yarusvl.ru/adminx/core/PriladkaAdmin.php
<?php

require_once('api/Mgc.php');
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
use PhpOffice\PhpSpreadsheet\Exception;

class PriladkaAdmin extends Mgc {

    public function fetch() {
        if($this->request->files('file')){

            $filo_dir = RP."files".DIRECTORY_SEPARATOR."priladka".DIRECTORY_SEPARATOR;
            $allowed_extentions = array("xlsx","xls");
            if($filo = $this->request->files('file')) {
              
                      $name = time().".".pathinfo($filo['name'], PATHINFO_EXTENSION);
                      if(in_array(strtolower(pathinfo($filo['name'], PATHINFO_EXTENSION)), $allowed_extentions)) {
                          move_uploaded_file($filo['tmp_name'], $filo_dir.$name);

                          $spreadsheet = \PhpOffice\PhpSpreadsheet\IOFactory::load($filo_dir.$name);
                          //$worksheet = $spreadsheet->getActiveSheet();
                          $sheetData = $spreadsheet->getActiveSheet()->toArray(null, true, true, true);
                       //   var_dump($sheetData);

                          foreach ($sheetData as $k=> $v){
if($k==1)continue;

                              $v = array_map("trim",$v);
                              $v['cat'] = $v['A'];
                              $v['subcat'] = $v['B'];
                              $v['sku'] = $v['C'];
                              $v['name'] = $v['D'];
                              $v['colors'] = $v['E'];
                              $v['num'] = $v['F'];
                              $v['size'] = $v['G'];
                              $v['price'] = $v['H'];
                              $v['formula'] = $v['I'];;


                              $sql = $this->db->placehold("INSERT INTO __priladka  SET 
	                        cat =?, md5_cat=?, 	 subcat=?,  md5_subcat=?,  	sku =?, 	`name` =?, 	colors =?, 	num =?, 	`size` =?, 	price =?, 	formula=?
 ON DUPLICATE KEY UPDATE 	cat =?,	md5_cat=?, 	 subcat=?,  md5_subcat=?, 	            `name` =?, 	colors =?, 	num =?, 	`size` =?, 	price =?, 	formula=?
 ",
     $v['cat'],  md5($v['cat']), $v['subcat'], md5($v['subcat']), $v['sku'], $v['name'], $v['colors'], $v['num'], $v['size'], $v['price'], $v['formula'],
     $v['cat'],  md5($v['cat']), $v['subcat'], md5($v['subcat']),            $v['name'], $v['colors'], $v['num'], $v['size'], $v['price'], $v['formula']
                              ) ;

                             // die($sql);
$this->db->query($sql);
                          }

                      }
                  
              }



        }



        $this->design->assign("rows",$this->priladka->getPriladka());
        return $this->design->fetch('priladka.tpl');
    }



}