You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

61 lines
2.0 KiB
PHP

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<?php
header("Content-Type:text/html;charset=utf-8");
error_reporting( E_ERROR | E_WARNING );
include "Uploader.class.php";
//上传配置
$config = array(
"savePath" => "upload/" , //存储文件夹
"maxSize" => 1000 , //允许的文件最大尺寸单位KB
"allowFiles" => array( ".gif" , ".png" , ".jpg" , ".jpeg" , ".bmp" ) //允许的文件格式
);
//临时文件目录
$tmpPath = "tmp/";
//获取当前上传的类型
$action = htmlspecialchars( $_GET[ "action" ] );
if ( $action == "tmpImg" ) { // 背景上传
//背景保存在临时目录中
$config[ "savePath" ] = $tmpPath;
$up = new Uploader( "upfile" , $config );
$info = $up->getFileInfo();
/**
* 返回数据调用父页面的ue_callback回调
*/
echo "<script>parent.ue_callback('" . $info[ "url" ] . "','" . $info[ "state" ] . "')</script>";
} else {
//涂鸦上传上传方式采用了base64编码模式所以第三个参数设置为true
$up = new Uploader( "content" , $config , true );
//上传成功后删除临时目录
if(file_exists($tmpPath)){
delDir($tmpPath);
}
$info = $up->getFileInfo();
echo "{'url':'" . $info[ "url" ] . "',state:'" . $info[ "state" ] . "'}";
}
/**
* 删除整个目录
* @param $dir
* @return bool
*/
function delDir( $dir )
{
//先删除目录下的所有文件:
$dh = opendir( $dir );
while ( $file = readdir( $dh ) ) {
if ( $file != "." && $file != ".." ) {
$fullpath = $dir . "/" . $file;
if ( !is_dir( $fullpath ) ) {
unlink( $fullpath );
} else {
delDir( $fullpath );
}
}
}
closedir( $dh );
//删除当前文件夹:
return rmdir( $dir );
}