$callback = input('CKEditorFuncNum');
$upload = $_FILES['upload'];
switch($upload['error']){
case 0://说明上传没有什么错误
break;
case 1:
case 2:
$error = '上传文件大小超过了最大值!'.ini_get('upload_max_filesize');
break;
case 3:
$error = '文件只有部分被上传!';
break;
case 4:
$error = '没有文件被上传!';
break;
case 6:
$error = '找不到临时文件夹!';
break;
case 7:
$error = '文件写入失败!';
break;
default:
$error = '未知上传错误!';
}
if(isset($error)){
echo "<script>window.parent.CKEDITOR.tools.callFunction($callback, '', '".$error."');</script>";exit();
}
if($upload['size']>204800){
echo "<script>window.parent.CKEDITOR.tools.callFunction($callback, '', '图片大小不得大于200kb');</script>";exit();
}
$file = request()->file('upload');//首先这一步不可靠,因为当文件有错误时这边根本不会有信息,比如上传过大,$_FILES有元素,error=1,这边获取的元素就为空,所以这部之前应该先处理以下,确保$file不为空
//这一步就需要先检查下是不是图片类型了
//$isimage = $file->checkImg();//用的是file的方法
$ext = $file->checkExt('jpg,png,gif,jpeg');//'gif', 'jpg', 'jpeg', 'bmp', 'png', 'swf'
$yange = $file->checkImg();
if($ext && $yange){
list($width, $height, $type, $attr) = getimagesize($file->getPathname());
if($width>1000){
//echo "<script type='text/javascript'>window.top.alert('图片宽度不得大于1000')</script>";exit();
echo "<script>window.parent.CKEDITOR.tools.callFunction($callback, '', '图片宽度不得大于1000px');</script>";exit();
}
if($height>500){
//echo "<font color=\"red\"size=\"2\">图片高度不得大于500</font>";exit();
echo "<script>window.parent.CKEDITOR.tools.callFunction($callback, '', '图片高度不得大于500px');</script>";exit();
}
}else{
echo "<script>window.parent.CKEDITOR.tools.callFunction($callback, '', '请上传图片类型');</script>";exit();
}
$info = $file->validate(['ext'=>'jpg,png,gif,jpeg'])->move(ROOT_PATH . 'public' . DS . 'ckeditor');
$data = array();
if($info){
$previewname = DS.'public' . DS . 'ckeditor' . DS . $info->getSaveName();
$previewname = str_replace('\\','\/',$previewname);
echo "<script type='text/javascript'>window.parent.CKEDITOR.tools.callFunction($callback,'".$previewname."','');</script>";
}else{
echo "<script>window.parent.CKEDITOR.tools.callFunction($callback, '', '".$file->getError()."');</script>";exit();
}
$upload = $_FILES['upload'];
switch($upload['error']){
case 0://说明上传没有什么错误
break;
case 1:
case 2:
$error = '上传文件大小超过了最大值!'.ini_get('upload_max_filesize');
break;
case 3:
$error = '文件只有部分被上传!';
break;
case 4:
$error = '没有文件被上传!';
break;
case 6:
$error = '找不到临时文件夹!';
break;
case 7:
$error = '文件写入失败!';
break;
default:
$error = '未知上传错误!';
}
if(isset($error)){
echo "<script>window.parent.CKEDITOR.tools.callFunction($callback, '', '".$error."');</script>";exit();
}
if($upload['size']>204800){
echo "<script>window.parent.CKEDITOR.tools.callFunction($callback, '', '图片大小不得大于200kb');</script>";exit();
}
$file = request()->file('upload');//首先这一步不可靠,因为当文件有错误时这边根本不会有信息,比如上传过大,$_FILES有元素,error=1,这边获取的元素就为空,所以这部之前应该先处理以下,确保$file不为空
//这一步就需要先检查下是不是图片类型了
//$isimage = $file->checkImg();//用的是file的方法
$ext = $file->checkExt('jpg,png,gif,jpeg');//'gif', 'jpg', 'jpeg', 'bmp', 'png', 'swf'
$yange = $file->checkImg();
if($ext && $yange){
list($width, $height, $type, $attr) = getimagesize($file->getPathname());
if($width>1000){
//echo "<script type='text/javascript'>window.top.alert('图片宽度不得大于1000')</script>";exit();
echo "<script>window.parent.CKEDITOR.tools.callFunction($callback, '', '图片宽度不得大于1000px');</script>";exit();
}
if($height>500){
//echo "<font color=\"red\"size=\"2\">图片高度不得大于500</font>";exit();
echo "<script>window.parent.CKEDITOR.tools.callFunction($callback, '', '图片高度不得大于500px');</script>";exit();
}
}else{
echo "<script>window.parent.CKEDITOR.tools.callFunction($callback, '', '请上传图片类型');</script>";exit();
}
$info = $file->validate(['ext'=>'jpg,png,gif,jpeg'])->move(ROOT_PATH . 'public' . DS . 'ckeditor');
$data = array();
if($info){
$previewname = DS.'public' . DS . 'ckeditor' . DS . $info->getSaveName();
$previewname = str_replace('\\','\/',$previewname);
echo "<script type='text/javascript'>window.parent.CKEDITOR.tools.callFunction($callback,'".$previewname."','');</script>";
}else{
echo "<script>window.parent.CKEDITOR.tools.callFunction($callback, '', '".$file->getError()."');</script>";exit();
}