kindeditor上传图片php
㈠ php版怎么使用kindeditor4.1批量上传图片组件
将upload_json.php中的一段改为:
$save_date=date("YmdHis");
//新文件名
$new_file_name=$save_date.'_'.rand(10000,99999).'.'.$file_ext;
//移动文件
$file_path=$save_path.$new_file_name;
$savePath.=$new_file_name;
if(move_uploaded_file($tmp_name,$file_path)===false){
alert("上传文件失败。");
}else{
#####存储文件路径#####
$saveDatas=array('path'=>$savePath,'date'=>$save_date);
$mysql->addFile($saveDatas);
if(!empty($_GET['type'])){
$type=$_GET['type'];
header("Location:../list_up_file.php?type={$type}");
}
}
@chmod($file_path,0644);
$file_url=$save_url.$new_file_name;
header('Content-type:text/html;charset=UTF-8');
$json=newServices_JSON();
㈡ PHP使用KindEditor 编辑器里的图片上传功能,,
看名称 源码跟踪
㈢ php集成kindeditor时候,动态加载的上传图片按钮不能使用怎么办不能绑定点击事件
您好,这样的:
第一步:在模板html页面引入如下文件:
<link rel="stylesheet" href="/data/editor/plugins/code/prettify.css" />
<script charset="utf-8" src="/data/editor/kindeditor.js"></script>
<script charset="utf-8" src="/data/editor/lang/zh_CN.js"></script>
<script charset="utf-8" src="/data/editor/plugins/code/prettify.js"></script>
<script>
KindEditor.ready(function(K) {
var editor1 = K.create('textarea[name="content"]', {
cssPath : '/data/editor/plugins/code/prettify.css',
uploadJson : "/Home/Common/upload",//图片上传后的处理地址
});
prettyPrint();
});
</script>
路径根据自己的项目不同,正确引入即可,uploadJson :
"/Home/Common/upload",
uploadJson后面的就是编辑器上传图片的处理地址,可以根据自己的自行配置
这里交由Home分组的Common控制器的upload方法处理图片上传
第二步:自定义上传处理函数
function upload(){
header("Content-Type:text/html;charset=utf-8");
import('ORG.Net.UploadFile');
$upload = new UploadFile();
$upload->maxSize = 3145728;
$upload->allowExts = array('jpg', 'gif', 'png', 'jpeg');
$upload->autoSub=true;
$upload->subType='date';
$upload->dateFormat='Ym';
$upload->savePath = './upload/article/';
if(!$upload->upload()){
$error['error']=1;
$error['message']=$upload->getErrorMsg();
exit(json_encode($error));
}
$info=$upload->getUploadFileInfo();
/*图片水印处理
import('ORG.Util.Image');
$image = new Image();
$image->water($upload->savePath.$info[0]['savename'],'./data/water.png');*/
$data=array(
'url'=>str_replace('./','/',$upload->savePath).$info[0]['savename'],
'error'=>0
);
exit(json_encode($data));
}
这里使用ThinkPHP的上传类处理图片上传,也可以自己写,唯一需要注意的就是返回的格式
查看了下官方的文档:
上传正确返回这种JSON串
{
"error" : 0,
"url" :
"http://www.example.com/path/to/file.ext"
}
上传失败返回这种JSON串
{
"error" : 1,
"message" :
"错误信息"
}
特别需要注意的一点就是返回的error一定要用整数1或是0,别用字符串'1'或'0'
原因是plugins/image/image.js的结果判断是
恒等于 ===
(当初自己就是因为PHP端返回的是字符串形式的'0'不等于整数的0导致上传之后总是弹窗报错)。
㈣ 怎样让KindEditor上传图片使用绝对路径
默认情况下kindeditor上传的图片在编辑器的根目录/attached/目录下。以日期建一个目录,然后保存文件。有些时候大概我们并不想这样。考虑到更新编辑器,或更换编辑器不太方便。比如我现在想把上传的文件保存在根目录下的uploadfiles目录下,需要修改以下代码:
首先,打开文件php\upload_json.php,在大约第16行到第19行,定义了文件保存目录路径和文件保存目录URL,我们需要修改为:
//文件保存目录路径
$save_path = $_SERVER['DOCUMENT_ROOT'].'\\uploadfiles\\';
//文件保存目录URL
$save_url = '/uploadfiles/';
解释一下:$save_path 即为最后保存文件的目录。这里就是根目录下的uploadfiles
$save_url 即为上传成功后,图片的URL地址。
这样,保存地址就变成了 根目录下的 uploadfiles/年月日/xxxxx.jpg了。
㈤ KindEditor在ThinkPHP中上传图片时路径中自动加"
我遇到跟你一样的问题了,
if (!empty($_POST['content1'])) {
//if (get_magic_quotes_gpc()) {
$htmlData = stripslashes($_POST['content1']);
//} else {
//用这个拿到的路径是这样的:<img src=\"http://m3.biz.itc.cn/pic/new/n/62/35/Img5873562_n.jpg\" alt=\"\" />
//$htmlData = $_POST['content1'];
/滚笑/}
}
//echo htmlspecialchars($htmlData);
//$vo['content'] = stripslashes(htmlspecialchars_decode($_POST['content1']));
你分别注释什么的正备嫌看看,我最后是注释了这些以后就ok了
原因就是举手有的服务器开启magic_quotes_gpc,试试就行了