PHP利用CKEditor上传图片
2016-06-12 10:36
579 查看
根据我转载的那篇关于CKEditor上传图片的文章,试了一下。现将过程记录如下。
首先,得先下载CKEditor,下载的地址:http://ckeditor.com/。我下载的是standard版。
1.去掉预览中的文字
在ckeditor/plugins/image/dialogs/image.js
搜索“b.config.image_previewText”,把(b.config.image_previewText||'')单引号中的内容全删了。
2.开启上传功能
还是image.js这个文件,搜索“upload”可以找到这一段
id:'Upload',hidden:true
实际上上传功能被隐藏了,把上面的true改成false。
3.定义上传图片时的action
在ckeditor/config.js中加入:
config.filebrowserUploadUrl = '/back/upload';
4.在BackAction中加入upload方法(我用的是ThinkPHP3.0);
//upload image from ckeditor
public function upload(){
$extensions = array("jpg","bmp","gif","png");
$uploadFilename = $_FILES['upload']['name'];
$extension = pathInfo($uploadFilename,PATHINFO_EXTENSION);
if(in_array($extension,$extensions)){
$uploadPath = str_replace("\\",'/',realpath(__ROOT__))."/uploads/";
$uuid = str_replace('.','',uniqid("",TRUE)).".".$extension;
$desname = $uploadPath.$uuid;
$previewname = '/uploads/'.$uuid;
$tag = move_uploaded_file($_FILES['upload']['tmp_name'],$desname);
$callback = $_REQUEST["CKEditorFuncNum"];
echo "<script type='text/javascript'>window.parent.CKEDITOR.tools.callFunction($callback,'".$previewname."','');</script>";
}else{
echo "<font color=\"red\"size=\"2\">*文件格式不正确(必须为.jpg/.gif/.bmp/.png文件)</font>";
}
}
首先,得先下载CKEditor,下载的地址:http://ckeditor.com/。我下载的是standard版。
1.去掉预览中的文字
在ckeditor/plugins/image/dialogs/image.js
搜索“b.config.image_previewText”,把(b.config.image_previewText||'')单引号中的内容全删了。
2.开启上传功能
还是image.js这个文件,搜索“upload”可以找到这一段
id:'Upload',hidden:true
实际上上传功能被隐藏了,把上面的true改成false。
3.定义上传图片时的action
在ckeditor/config.js中加入:
config.filebrowserUploadUrl = '/back/upload';
4.在BackAction中加入upload方法(我用的是ThinkPHP3.0);
//upload image from ckeditor
public function upload(){
$extensions = array("jpg","bmp","gif","png");
$uploadFilename = $_FILES['upload']['name'];
$extension = pathInfo($uploadFilename,PATHINFO_EXTENSION);
if(in_array($extension,$extensions)){
$uploadPath = str_replace("\\",'/',realpath(__ROOT__))."/uploads/";
$uuid = str_replace('.','',uniqid("",TRUE)).".".$extension;
$desname = $uploadPath.$uuid;
$previewname = '/uploads/'.$uuid;
$tag = move_uploaded_file($_FILES['upload']['tmp_name'],$desname);
$callback = $_REQUEST["CKEditorFuncNum"];
echo "<script type='text/javascript'>window.parent.CKEDITOR.tools.callFunction($callback,'".$previewname."','');</script>";
}else{
echo "<font color=\"red\"size=\"2\">*文件格式不正确(必须为.jpg/.gif/.bmp/.png文件)</font>";
}
}
相关文章推荐
- thinkphp的mongo扩展bug
- thinkphp下mongo的操作
- [PHP][位转换积累]之异或运算的简单加密应用
- ajax+php实现自动提示文本框
- yii框架中使用cookie和session
- mysql新建数据表 命令行与php方式
- php 明天的显示方法
- php导出excel表格
- PHP打包下载整个文件夹或多文件
- PHP常用基础知识和学习资源
- Ubuntu 16.04安装Matplotlib
- 修改iptables防火墙规则解决vsftp登录后不显示文件目录的问题
- 如何利用zendstudio新建 或导入php项目
- 关闭 php X-Powered-By 信息
- yii2中结合gridview如何使用modal弹窗实例代码详解
- IIS7配置PHP5.5 对找不到的文件启用文件监视的解决方法[原创]_win服务器_脚本之家
- [李景山php]每天laravel-20160827|McryptEncrypter-1
- [李景山php]每天laravel-20160827|McryptEncrypter-1
- 最新最全PHP生成制作验证码代码详解(推荐)
- 再谈PHP中单双引号的区别详解