<?php
//if (!$user_id) die("Вам сюда нельзя!");
$paramUrlUserdocsid = explode('/', $requestUrl);
$id = $paramUrlUserdocsid[1];
$arhive = abs((int)$_POST['arhive']);
if (isset($id)) {
$id = num($id);
} else {
$err = 'Пустой ID записи!';
}
$req1 = DB::$the->prepare("SELECT * FROM `users_docs` WHERE `UserID` = ?")->execute(array($id));
$req = $req1->rowCount();
if ($req > 0) {
$dataNews = array();
while ($data = $req1->fetch(PDO::FETCH_ASSOC)) {
$replace = array(
'date' => date_format(date_create(output($data["date"])), 'd.m.Y H:i:s')
);
array_push($dataNews, array_replace($data, $replace));
$userFio = fio($data["UserID"]);
}
} else {$noData = 'Документы не найдены!';}
if ($arhive == true) {
include_once(HOME .'/libs/PclZip/pclzip.lib.php'); //Подключаем библиотеку.
$archive = new PclZip(userDocs .'/'. $id .'/'. translitRuEn($userFio) .'.zip'); //Создаём объект и в качестве аргумента, указываем название архива, с которым работаем.
$result = $archive->create(userDocs .'/'. $id, PCLZIP_OPT_REMOVE_PATH, userDocs .'/'. $id); // Этим методом класса мы создаём архив с заданным выше названием
//var_dump($result); // Если всё прошло хорошо, возращаем массив с данными (время создание архива, занесённым файлом и т.д)
if($result == 0) {
$archiveError = $archive->errorInfo(true); //Возращает причину ошибки
} else {
$resultFiles = userDocs .'/'. $id .'/'. translitRuEn($userFio) .'.zip';
$fp = fopen($resultFiles, 'rb');
//header('Content-Description: File Transfer');
header('Content-type: application/zip');
//header('Content-Disposition: attachment; filename=' . basename($resultFiles));
// header('Content-Transfer-Encoding: binary');
// header('Expires: 0');
// header('Cache-Control: must-revalidate');
//header('Pragma: public');
header('Content-Length: ' . filesize($fp));
//readfile($resultFiles);
fpassthru($fp);
}
//var_dump($archive);
}
echo $load->render('Header/header.twig', array('title' => 'Tekkaravan', 'sessionId' => $_SESSION['id'], 'url' => URL, 'userAccessLevel' => $access_level, 'usertype' => $user_type, 'userlevel' => $user_level));
echo $load->render('Account/userdocsid.twig', array('dataNews' => $dataNews, 'url' => URL, 'noData' => $noData, 'sessionId' => $_SESSION['id'],
'userlevel' => $user_level, 'usertype' => $user_type, 'userFio' => $userFio, 'userDocs' => userDocs, 'UserID' => $id, 'archiveError' => $archiveError));
echo $load->render('Footer/footer.twig', array('url' => URL, 'sessionId' => $_SESSION['id']));
?>