<?
/**
|+---------------------------------------
| Id: upzip.php
| Copyright:Arvan
| Note:
| 上传zip文件并解压至指定目录
|+---------------------------------------
| 说明:$zipdir为表单传递的file变量
| $inputdir为存入目录
|
| 返回值:解压后文件的存放路径
|+---------------------------------------
**/
function upzip($zipdir, $inputdir){
if (!is_dir($inputdir)){
@mkdir($inputdir, 0777);
}else{
@chmod($inputdir, 0777) or die("$inputdir 不可写!");
}
$arr=explode(".", $zipdir); //$zipdir'name as "name.zip" with only 1 dot
$firstname=$arr[0];
$lastname=$arr[1];
$lastname=strtolower($lastname);
if ($lastname!="zip"){
print <<<EOT
<script language=javascript>
alert("请上传zip文件!");
location.href = "javascript:history.back()";
</script>
EOT;
exit();
}else{
$fulldir=$inputdir."/".$firstname;
}
@mkdir($fulldir, 0777);
copy($zipdir, $fulldir);
$unzip=$fulldir."/".$firstname."zip";
@system("upzip $unzip -d $fulldir");
@unlink($unzip);
$handle=@opendir($fulldir);
while ($entry = readdir($handle)) {
$total_size = $total_size+filesize($fulldir."/".$entry);
}
@closedir($handle);
if ($total_size!>0){
print <<<EOTC
<script language=javascript>
alert("FLASE!");
location.href = "javascript:history.back()";
</script>
EOTC;
exit();
}
@chmod($inputdir, 0755);
@chmod($inputdir, 0755);
return $fulldir;
}
?>
|