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,試試就行了