QUR($sql);} {$sql = 'CREATE TABLE IF NOT EXISTS `'.$ST['dbpf'].'_platniki_period` ( `id` int(11) NOT NULL AUTO_INCREMENT, `data_c` int(11) NOT NULL, `id_stud` int(11) NOT NULL, `block` int(11) NOT NULL, `zadolgen` varchar(255) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;'; $rez = $DB->QUR($sql);} $dir = 'upload/platniki/'; $step=''; if(isset($_GET['step'])) $step = $_GET['step']; if($step=='view'){ $file = $dir.'json/all.json'; $users = json_decode(file_get_contents($file),1); echo ''; foreach($users as $k => $v){ $f=explode(' ',$v[0]); if($f[0]!=''){ $sql = 'SELECT fio,email FROM '.$ST['dbpf'].'_users WHERE fio LIKE "'.$f[0].' '.$f[1].'%"'; $rez = $DB->QUR_SEL($sql); $iu=array(); if($rez){ foreach($rez as $key => $val)if($key){ $iu[]=$val['fio'].':'.$val['email']; } } echo ''; } } echo '
'.$v[0].' '.$v[1].' '.$v[2].' '.implode('
',$iu).'
'; } if($step=='add'){ /* ОЧНИКИ sheet1.xml Абди Хассан Нурадин 5 sheet2.xml Агаев Шатлык 5 sheet3.xml Абдулаев 5 sheet4.xml Экономики и сервиса 5 sheet5.xml ОФО Лечебный ф-тет 3 sheet6.xml ОФО Экологичский ф-тет 5 - 3 блока sheet7.xml ОФО Фак-тет аграрных технологий 5 sheet8.xml ОФО Фармацевтический ф-тет 3 sheet9.xml ОФО Фак-тет информационных систем 5 sheet10.xml Абдельмоним Махмуд Ашраф Мохамед 4 - должно быть 5 и 3 блока всего sheet11.xml ОРДИНАТУРА 5 - 3 блока sheet12.xml МАГИСТРАТУРА Абдул Водуд Зиаурахман 5 sheet13.xml Абилова Джамила Бейтулла кызы 5 - 3 блока sheet14.xml Гриднева Инна Александровна 5 - 1 блок sheet15.xml Стоматология очная фомра 3 sheet16.xml Абдулкарим Мохамад 3 */ /* ЗАОЧНИКИ sheet1.xml Инженерно-экономический 5 sheet2.xml технологический 5 sheet3.xml Абдрафикова 5 sheet4.xml управление 5 sheet5.xml Абдуллоев 5 sheet6.xml Фармацевтический 3 sheet7.xml аграрных 5 sheet8.xml Экологический 5 sheet9.xml Аскералиев 5 */ $file = $dir.'/2018och.xlsx'; $fo='очники'; $t = parse_xlsx($file); $users=array(); $blok_save=4; foreach($t as $k => $v){ $num_st=-1; $kol=0; foreach($v as $r => $c){ foreach($c as $r1 => $c1) if(trim(mb_strtolower($c1['text']))=='договор') {//определяем столбец договора $kol++; //количество блоков = кол-во месяцев $num_st=$r1; //echo $k.'-'.$num_st.'
'; break; } if($num_st!=-1){ $fio = trim($c[1]['text']); $ndo = trim($c[$num_st]['text']); $npr = '';//номер приказа if($fio!=''&&$ndo!=''){ $zad = trim($c[17]['text']); $data = array('fio'=>$fio,'npr'=>$npr,'ndo'=>$ndo,'zad'=>$zad,'kol'=>$kol,'fo'=>$fo,'otdel'=>$k); insert_in_table($data); } } } } /*foreach($t as $k => $v){ file_put_contents($dir.'/json/'.$k,json_encode($v)); //echo '
'.print_r($v,1).'
'; $num_st=-1; $kol=0; foreach($v as $r => $c){ foreach($c as $r1 => $c1) if(trim(mb_strtolower($c1['text']))=='договор') {//определяем столбец договора $kol++; //количество блоков = кол-во месяцев $num_st=$r1; //echo $k.'-'.$num_st.'
'; break; } if($num_st!=-1){ $fio = trim($c[1]['text']); $ndo = trim($c[$num_st]['text']); if($fio!=''&&$ndo!=''){ $zad = trim($c[17]['text']); $users[$kol][]=array($fio,$ndo,$zad); //$key = cha($fio,$users); //if($key!=-1) $users[$key]=array($fio,$ndo,$zad); //else $users[]=array($fio,$ndo,$zad); } } } } //echo '
'.print_r($users,1).'
'; file_put_contents($dir.'/json/all.json',json_encode($users[$blok_save]));*/ } if($step=='add1'){ $file = $dir.'/2018zaoch.xlsx'; $fo='заочники'; $t = parse_xlsx($file); $users=array(); $blok_save=4; foreach($t as $k => $v){ $num_st=-1; $kol=0; foreach($v as $r => $c){ foreach($c as $r1 => $c1) if(trim(mb_strtolower($c1['text']))=='договор') {//определяем столбец договора $kol++; //количество блоков = кол-во месяцев $num_st=$r1; break; } if($num_st!=-1){ $fio = trim($c[1]['text']); $ndo = trim($c[$num_st]['text']); $npr = '';//номер приказа if($fio!=''&&$ndo!=''){ $zad = trim($c[17]['text']); $data = array('fio'=>$fio,'npr'=>$npr,'ndo'=>$ndo,'zad'=>$zad,'kol'=>$kol,'fo'=>$fo,'otdel'=>$k); insert_in_table($data); } } } } } if($step==''){ $fio = ''; if(isset($_POST['fio'])) $fio = $_POST['fio']; echo '
'; echo 'Введите ФИО '; echo ''; echo '
'; if(isset($_POST['search'])){ $sql = 'SELECT ps.fio,ps.dogovor,ps.foobuch,ps.otdel,pp.block,pp.zadolgen FROM '.$ST['dbpf'].'_platniki_stud as ps, '.$ST['dbpf'].'_platniki_period as pp WHERE ps.fio LIKE "%'.$fio.'%" AND ps.id=pp.id_stud ORDER BY pp.data_c'; $rez = $DB->QUR_SEL($sql); if($rez){ echo ''; echo ''; echo ''; echo ''; foreach($rez as $k => $v)if($k){ if($v['foobuch']=='очники'){ if($v['otdel']=='sheet1.xml') $fak='инженерно-эконом'; if($v['otdel']=='sheet2.xml') $fak='технологический'; if($v['otdel']=='sheet3.xml') $fak='управления'; if($v['otdel']=='sheet4.xml') $fak='Экономики и сервиса'; if($v['otdel']=='sheet5.xml') $fak='Лечебный ф-тет'; if($v['otdel']=='sheet6.xml') $fak='Экологичский ф-тет'; if($v['otdel']=='sheet7.xml') $fak='Фак-тет аграрных технологий'; if($v['otdel']=='sheet8.xml') $fak='Фармацевтический ф-тет'; if($v['otdel']=='sheet9.xml') $fak='Фак-тет информационных систем'; if($v['otdel']=='sheet10.xml') $fak='Международный'; if($v['otdel']=='sheet11.xml') $fak='ОРДИНАТУРА'; if($v['otdel']=='sheet12.xml') $fak='МАГИСТРАТУРА'; if($v['otdel']=='sheet13.xml') $fak='ЦЕЛЕВИКИ ЛД'; if($v['otdel']=='sheet14.xml') $fak='ЦЕЛЕВИКИ ФА'; if($v['otdel']=='sheet15.xml') $fak='Стоматология'; if($v['otdel']=='sheet16.xml') $fak='Педиатрия'; } if($v['foobuch']=='заочники'){ if($v['otdel']=='sheet1.xml') $fak='инженерно-эконом'; if($v['otdel']=='sheet2.xml') $fak='технологический'; if($v['otdel']=='sheet3.xml') $fak='финансы'; if($v['otdel']=='sheet4.xml') $fak='управление'; if($v['otdel']=='sheet5.xml') $fak='информац. системы'; if($v['otdel']=='sheet6.xml') $fak='Фармацевтический ф-тет'; if($v['otdel']=='sheet7.xml') $fak='Фак-тет аграрных технологий'; if($v['otdel']=='sheet8.xml') $fak='Экологический'; if($v['otdel']=='sheet9.xml') $fak='МАГИСТРАТУРА'; } echo ''; } echo ''; echo '
ФИОДоговорФОФакКвЗадолж
'.$v['fio'].' '.$v['dogovor'].' '.$v['foobuch'].' '.$fak.' '.$v['block'].' '.$v['zadolgen'].'
'; } } } function insert_in_table($data){ GLOBAL $ST,$DB; $out=array(); $sql = 'SELECT id FROM '.$ST['dbpf'].'_platniki_stud WHERE fio="'.$data['fio'].'" AND foobuch="'.$data['fo'].'" AND otdel="'.$data['otdel'].'"'; $rez = $DB->QUR_SEL($sql); //echo $sql.'
'.print_r($rez,1).'
'; //if($rez){ if($rez[0]){ $id_stud=$rez[1]['id']; $sql1 = 'SELECT id FROM '.$ST['dbpf'].'_platniki_period WHERE id_stud='.$id_stud.' AND block='.$data['kol'].''; $rez1 = $DB->QUR_SEL($sql1); //echo $sql1.'
'.print_r($rez1,1).'
'; //if($rez1){ if($rez1[0]){ $sql = 'UPDATE '.$ST['dbpf'].'_platniki_period SET zad = "'.$data['zad'].'" WHERE id = '.$rez1[1]['id'].''; $rez = $DB->QUR($sql); //echo $sql.'
'.print_r($rez,1).'
'; }else{ $sql = 'INSERT INTO '.$ST['dbpf'].'_platniki_period VALUES (0,'.time().','.$id_stud.','.$data['kol'].',"'.$data['zad'].'")'; $rez = $DB->QUR($sql); //echo $sql.'
'.print_r($rez,1).'
'; } //} }else{ $sql = 'INSERT INTO '.$ST['dbpf'].'_platniki_stud VALUES (0,'.time().',"'.$data['fio'].'","","'.$data['ndo'].'","'.$data['fo'].'","'.$data['otdel'].'")'; $rez = $DB->QUR($sql); //echo $sql.'
'.print_r($rez,1).'
'; $id_stud = mysql_insert_id(); $sql = 'INSERT INTO '.$ST['dbpf'].'_platniki_period VALUES (0,'.time().','.$id_stud.','.$data['kol'].',"'.$data['zad'].'")'; $rez = $DB->QUR($sql); //echo $sql.'
'.print_r($rez,1).'
'; } //} return $out; } function cha($fio,$users){//получение ключа в массиве фамилии foreach($users as $k => $v){ if($fio==$v[0]) { echo $fio.'--'.$v[0].'
'; return $k; } } return -1; } function parse_xlsx($file){ include_once 'inc/pclzip.lib.php'; $out=array(); $archive = new PclZip($file); $t=explode('.',$file);unset($t[count($t)-1]); $folder = implode('.',$t); //echo $folder.'; '; if(!file_exists($folder)) mkdir($folder); if ($archive->extract(PCLZIP_OPT_PATH, $folder) == 0) { //die("Error : ".$archive->errorInfo(true)); }else{ $xml = simplexml_load_file($folder . '/xl/sharedStrings.xml'); $sharedStringsArr = array(); foreach ($xml->children() as $item) { $sharedStringsArr[] = (string)$item->t; } $handle = @opendir($folder . '/xl/worksheets'); while ($file = @readdir($handle)) { //проходим по всем файлам из директории /xl/worksheets/ if ($file != "." && $file != ".." && $file != '_rels') { //if ($file == 'sheet1.xml') { $xml = simplexml_load_file($folder . '/xl/worksheets/' . $file); $mergeCells=array(); foreach ($xml->mergeCells->mergeCell as $item) { $attr = $item->attributes(); $t=explode(':',$attr['ref']); $t1=array(0=>$t[0],1=>$t[1]); $mergeCells[]=$t1; } $ab=array('A'=>1,'B'=>2,'C'=>3,'D'=>4,'E'=>5,'F'=>6,'G'=>7,'H'=>8,'I'=>9,'J'=>10,'K'=>11,'L'=>12,'M'=>13,'N'=>14,'O'=>15); //по каждой строке $row = 0; foreach ($xml->sheetData->row as $item) { $out[$file][$row] = array(); //по каждой ячейке строки $cell = 0; foreach ($item as $child) { $attr = $child->attributes(); $value = isset($child->v)? (string)$child->v:false; $out[$file][$row][$cell]['text'] = isset($attr['t']) ? $sharedStringsArr[$value] : $value; if(isset($attr['r'])){//проверим на объединение foreach($mergeCells as $k1 => $v1){ if($attr['r'] == $v1[0]){//есть в объединениях if($v1[0]{0}!=$v1[1]{0}&&$v1[0]{1}==$v1[1]{1}){//горизонтальное объединение $out[$file][$row][$cell]['mcgor'] = $ab[$v1[1]{0}]-$ab[$v1[0]{0}]+1; } if($v1[0]{0}==$v1[1]{0}&&$v1[0]{1}!=$v1[1]{1}){//вертикальное объединение $out[$file][$row][$cell]['mcver'] = $v1[1]{1}-$v1[0]{1}+1; } if($v1[0]{0}!=$v1[1]{0}&&$v1[0]{1}!=$v1[1]{1}){//херовое объединение $out[$file][$row][$cell]['mcver'] = $v1[1]{1}-$v1[0]{1}+1; $out[$file][$row][$cell]['mcgor'] = $ab[$v1[1]{0}]-$ab[$v1[0]{0}]+1; } } } } $cell++; } $row++; } } } } return $out; }