|
Thinkphp整合百度Ueditor,基于黃永成老師的視頻說(shuō)明的
申明:最好大家都能寫(xiě)絕對(duì)路徑的都寫(xiě)好絕對(duì)路徑比如:window.UEDITOR_HOME_URL
他在教程里面已經(jīng)說(shuō)了的,我就不再次說(shuō)了啊,就一筆帶過(guò),好了不廢話!
在調(diào)用編輯器的時(shí)候首先先初始化一些值:
<script type="text/Javascript" charset="utf-8"> window.UEDITOR_HOME_URL = "/Public/ueditor/"; //UEDITOR_HOME_URL、config、all這三個(gè)順序不能改變 window.onload=function(){ window.UEDITOR_CONFIG.initialFrameHeight=300;//編輯器的高度 window.UEDITOR_CONFIG.imageUrl="{:U('admin/Category/checkPic')}"; //圖片上傳提交地址 window.UEDITOR_CONFIG.imagePath=' /Uploads/thumb/';//編輯器調(diào)用圖片的地址 UE.getEditor('contents');//里面的contents是我的textarea的id值 } </script>
然后再引入2個(gè)js文件,分別是:1、ueditor.all.min.js 2、ueditor.config.js
在這里申明一下 我以上說(shuō)的調(diào)用方式,順序絕對(duì)不能亂,亂了就會(huì)出問(wèn)題了,所以你就按照我的按部就班的做吧!
因?yàn)槲抑貙?xiě)了編輯器的圖片提交地址,所以我還得在控制器里面寫(xiě)一個(gè)對(duì)圖片處理的方法。
代碼如下:
//改變Ueditor 默認(rèn)圖片上傳路徑 public function checkPic(){ import('ORG.NET.UploadFile'); $upload = new UploadFile();// 實(shí)例化上傳類(lèi) $upload->allowExts = array('jpg', 'gif', 'png', 'jpeg');// 設(shè)置附件上傳類(lèi)型 $upload->autoSub =true ; $upload->subType ='date' ; $upload->dateFormat ='ym' ; $upload->savePath = './Uploads/thumb/';// 設(shè)置附件上傳目錄 if($upload->upload()){ $info = $upload->getUploadFileInfo(); echo json_encode(array( 'url'=>$info[0]['savename'], 'title'=>htmlspecialchars($_POST['pictitle'], ENT_QUOTES), 'original'=>$info[0]['name'], 'state'=>'SUCCESS' )); }else{ echo json_encode(array( 'state'=>$upload->getErrorMsg() )); } }
我首先給大家看看代碼先,在繼續(xù)說(shuō)明,
1、引入tp官方的文件上傳處理類(lèi),然后初始化一些配置,這些都不介紹了啊!
2、判斷他是否上傳成功了,如果上傳成功了,就先獲取他的上傳成功的信息,然后把數(shù)組轉(zhuǎn)成json,用phpjson_encode。如果上傳失敗就把上傳失敗的信息直接返回!
以上都是在黃永成老師教程里面已經(jīng)說(shuō)明了的!就不詳細(xì)說(shuō)明了,不懂的就去看視頻!
在整合好了上傳后,發(fā)現(xiàn)上傳的圖片路徑被轉(zhuǎn)義了,一直顯示不出來(lái)如圖:
我就在顯示出數(shù)據(jù)的哪里用反轉(zhuǎn)義函數(shù),進(jìn)行操作了一下{$article.content|stripslashes}這樣就是把轉(zhuǎn)義的字符串進(jìn)行反轉(zhuǎn)義,這樣數(shù)據(jù)就能正常顯示了
如圖:
然后在前臺(tái)模版顯示數(shù)據(jù)的時(shí)候不僅要反轉(zhuǎn)義還要去掉html實(shí)體化,{$article.content|htmlspecialchars_decode|stripslashes}這樣就能正常顯示了!
還有喲個(gè)問(wèn)題,百度編輯器當(dāng)里面的內(nèi)容增長(zhǎng)時(shí),他的高度也是增長(zhǎng)的,如圖:
解決方案就是在Ueditor的配置文件ueditor.config.js,里面的第428行打開(kāi)注釋?zhuān)某蓆rue,還有430行注釋打開(kāi)把他改成你初始化的的高度對(duì)應(yīng)就好了。如圖:
這樣編輯器就不會(huì)撐高了!如圖:
完結(jié)!!! 說(shuō)的不好的大神勿噴~~這個(gè)只是分享交流,如果說(shuō)錯(cuò)了 指出來(lái)就行了 謝謝~~~
補(bǔ)充說(shuō)明:關(guān)于Ueditor在ie7下面調(diào)用不出來(lái)的bug問(wèn)題解決辦法,這個(gè)是前天逛官網(wǎng)的時(shí)候,發(fā)現(xiàn)一個(gè)人的這個(gè)問(wèn)題的,因?yàn)槲抑挥腥艘?jiàn)人愛(ài)的ie6,也都沒(méi)有去測(cè)試,所以還是別人提醒,現(xiàn)在更正一下ie7的bug解決方案~感謝這位大濕啊~
如圖:
php技術(shù):ThinkPHP整合百度Ueditor圖文教程,轉(zhuǎn)載需保留來(lái)源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。