<?php
include_once "inc/conn.php";
include_once "inc/header.inc.php";
include_once "inc/utility_all.php";
include_once "inc/utility_file.php";
include_once "inc/utility_org.php";
/*
while (list($key, $value) = each($_GET)) {
$key = $value;
}
while (list($key, $value) = each($_POST)) {
$key = $value;
}
$DOWN_PRIV = $ACCESS_PRIV = 0;
$ACCESS_PRIV = $MANAGE_PRIV = $DOWN_PRIV = $NEW_PRIV = $OWNER_PRIV = $MANAGE_SELF_PRIV = 0;
$module_priv = "";
if (is_module_manager(4)) {
$module_priv = 1;
}
if ($SORT_ID != 0) {
$query = "SELECT SORT_NAME,SORT_PARENT,USER_ID,MANAGE_USER,DOWN_USER,NEW_USER,OWNER from FILE_SORT where SORT_ID='$SORT_ID'";
$cursor = exequery(TD::conn(), $query);
if ($ROW = mysql_fetch_array($cursor)) {
$SORT_NAME = $ROW["SORT_NAME"];
$SORT_PARENT = $ROW["SORT_PARENT"];
$USER_ID = $ROW["USER_ID"];
$MANAGE_USER = $ROW["MANAGE_USER"];
$DOWN_USER = $ROW["DOWN_USER"];
$NEW_USER = $ROW["NEW_USER"];
$OWNER = $ROW["OWNER"];
$ACCESS_PRIV = ($USER_ID == $_SESSION["LOGIN_USER_ID"]) || check_priv($USER_ID) || $OWNER_PRIV;
$MANAGE_PRIV = ($USER_ID == $_SESSION["LOGIN_USER_ID"]) || check_priv($MANAGE_USER);
$DOWN_PRIV = ($USER_ID == $_SESSION["LOGIN_USER_ID"]) || check_priv($DOWN_USER);
if ($MANAGE_PRIV || ($module_priv == 1)) {
$DOWN_PRIV = 1;
}
}
}
else if ($FILE_SORT == 2) {
$ACCESS_PRIV = $MANAGE_PRIV = $DOWN_PRIV = $NEW_PRIV = 1;
}
if ($SORT_ID == 0) {
$SORT_NAME = _("根目录");
}
if (!$ACCESS_PRIV && ($module_priv != 1)) {
Message(_("错误"), _("您没有权限访问该目录"));
exit();
}
*/
$run_id="48502";
$query1="select * from bpm_data_193 where run_id='$run_id' limit 1";
$cursor1=exequery(TD::conn(),$query1);
while($row1=mysql_fetch_array($cursor1)){
$mingcheng=$run_id.$row1["run_name"];
}
if($mingcheng!=""){
$SORT_NAME=$mingcheng;
} else {
$SORT_NAME = _("附件下载");
}
session_cache_limiter("private, must-revalidate");
if (!class_exists("ZipArchive")) {
$THE_PATH2 = realpath(MYOA_ROOT_PATH . "../") . "\bin\\";
$MSG = sprintf(_("1、确认%sphp_zip.dll存在;"), $THE_PATH2) . "<br>";
$MSG .= sprintf(_("2、请用记事本打开%sphp.ini;"), $THE_PATH2) . "<br>";
$MSG .= _("3、在文件中查找“;extension=php_zip.dll”,删除前面的“;”符号,然后保存并关闭文件;") . "<br>";
$MSG .= _("4、重新启动Office_Anywhere服务。");
Message(_("请联系管理员开启Zip扩展"), $MSG);
exit();
}
$zip_file = get_tmp_filename("file_folder_down");
$zip = new ZipArchive();
$res = $zip->open($zip_file, ZipArchive::CREATE | ZIPARCHIVE::OVERWRITE);
if ($res !== true) {
Message(_("提示"), _("创建文件错误,代码:") . $res);
exit();
}
$tmp_file_array = array();
$tmp_file_array[] = $zip_file;
$query="select * from bpm_data_193_child where run_id='48502'";
$cursor=exequery(TD::conn(),$query);
while($ROW=mysql_fetch_array($cursor)){
$ATTACHMENT_ID = $ROW["data_m16339_key"];
$ATTACHMENT_NAME = $ROW["data_m16339"];
}
$ATTACHMENT_ID_ARRAY = explode(",", $ATTACHMENT_ID);
$ATTACHMENT_NAME_ARRAY = explode("*", $ATTACHMENT_NAME);
$ARRAY_COUNT = sizeof($ATTACHMENT_ID_ARRAY);
$ATTACHMENT_NAME_TEMP_ARRAY = "";
for ($I = 0; $I < $ARRAY_COUNT; $I++) {
if ($ATTACHMENT_ID_ARRAY[$I] == "") {
continue;
}
$filename = attach_real_path($ATTACHMENT_ID_ARRAY[$I], $ATTACHMENT_NAME_ARRAY[$I]);
if (!file_exists($filename)) {
continue;
}
$tmp_filename = get_tmp_filename("file_folder_attach", basename($filename));
if (decrypt_attach($filename, $tmp_filename)) {
$filename = $tmp_filename;
$tmp_file_array[] = $tmp_filename;
}
$ATTACHMENT_NAME_TEMP = $ATTACHMENT_NAME_ARRAY[$I];
if (find_id($ATTACHMENT_NAME_TEMP_ARRAY, $ATTACHMENT_NAME_TEMP)) {
$ATTACHMENT_NAME_TEMP = substr($ATTACHMENT_ID_ARRAY[$I], 5) . "_" . $ATTACHMENT_NAME_TEMP;
$ATTACHMENT_NAME_TEMP_ARRAY .= $ATTACHMENT_NAME_TEMP . ",";
}
else {
$ATTACHMENT_NAME_TEMP_ARRAY .= $ATTACHMENT_NAME_TEMP . ",";
}
$res = $zip->addFile($filename, $ATTACHMENT_NAME_TEMP);
if ($res !== true) {
$zip->close();
@unlink($zip_file);
echo _("添加文件错误");
exit();
}
}
$zip->close();
if (file_exists($zip_file)) {
$I = 0;
$CHAR = "/,\,*,:,?,\",<,>,|";
while ($I < strlen($SORT_NAME)) {
$STR = substr($SORT_NAME, $I, 1);
if (find_id($CHAR, $STR)) {
$SORT_NAME = str_replace($STR, "", $SORT_NAME);
}
$I++;
}
ob_end_clean();
header("Content-Type: application/zip");
header("Content-Length: " . filesize($zip_file));
Header("Content-Disposition: attachment; " . get_attachment_filename($SORT_NAME . ".zip"));
$handle = td_fopen($zip_file, "rb");
while (!feof($handle)) {
echo fread($handle, 16384);
}
fclose($handle);
@unlink($zip_file);
}
else {
echo _("下载文件失败");
}
foreach ($tmp_file_array as $tmp_file ) {
@unlink($tmp_file);
}
?>