【问题标题】:cakphp 2.0 file browser/uploader with CKEditorcakephp 2.0 文件浏览器/使用 CKEditor 上传
【发布时间】:2017-07-18 14:31:20
【问题描述】:

我在我的 cakePHP 2.0 应用程序中使用 ckeditor。我已将它安装在我的 app/webroot/js/ckeditor 目录中。

ckeditor 显示图片上传选项,并在config.js 中配置了这些行

 config.filebrowserImageBrowseUrl = '/app/webroot/ckeditor/pictures/';
 config.filebrowserImageUploadUrl = '/app/webroot/ckeditor/pictures/';

现在,图片上传界面看起来不错,但是当我点击“发送到服务器”按钮时,图片没有上传到folder path

注意:将图片上传到文件夹的下一步是什么?

【问题讨论】:

    标签: php cakephp ckeditor


    【解决方案1】:

    您必须将它们链接到您的上传者

    喜欢这个

    config.filebrowserBrowseUrl = BASE_URL + 'filebrowser/browse.php?type=files';
    config.filebrowserImageBrowseUrl = BASE_URL + 'filebrowser/browse.php?type=images';
    config.filebrowserFlashBrowseUrl = BASE_URL + 'filebrowser/browse.php?type=flash';
    config.filebrowserUploadUrl = BASE_URL + 'filebrowser/upload.php?type=files';
    config.filebrowserImageUploadUrl = BASE_URL + 'filebrowser/upload.php?type=images';
    config.filebrowserFlashUploadUrl = BASE_URL + 'filebrowser/upload.php?type=flash';
    

    【讨论】:

    • 更喜欢将代码直接放在答案中而不是图片中。如果你真的需要使用图片,请嵌入它。
    【解决方案2】:

    当你点击上传到服务器时,Ckeditor 会在你的服务器上发送 FileData。您必须将服务器上的 $_FILES 数据处理为给定路径,例如提到的@Ahmed Ebead。我在 Yii2 中这样使用它:

      public function actionPublicUploadDrag(){
        return self::publicUpload(1);
    }
    
    public function actionPublicUploadBrowse(){
        /*prd(Yii::$app->request->get());*/
        return self::publicUpload(2);
    }
    
    // to provide browse facility
    public function actionImageuploader(){
        //render your image browser page in this.
        exit;
    }
    
    private static function publicUpload($by = 1 ){
    
        $image = \yii\web\UploadedFile::getInstanceByName('upload');
        $destination = "@backend/web/img/public_image/";
        if($image){
            $images = Image::getImagine()->open($image->tempName);
            //saving original
            $imageName = time().$image->name;
           $saved = $image->saveAs(Yii::getAlias($destination). $imageName);
           if($saved){
            //{"fileName":"590860cae9734.jpg","uploaded":1,"url":"\/userfiles\/files\/Public%20Folder\/590860cae9734.jpg"}
                $uploadPath = \yii\helpers\Url::toRoute(['img/public_image/'],true);
            if($by == 1){
                return Json::encode(["fileName"=>$imageName,"uploaded"=>1,"url" => $uploadPath.'/'.$imageName]);
            }else if($by == 2 ){
                return "<script type='text/javascript'>window.parent.CKEDITOR.tools.callFunction('1', '$uploadPath/".$imageName."', 'Uploaded');</script>";
                }
           }
        }
        exit;
    }
    

    【讨论】:

    • &lt;script type='text/javascript'&gt;window.parent.CKEDITOR.tools.callFunction('1', '$uploadPath/".$imageName."', 'Uploaded');&lt;/script&gt; 这个代码让我很开心。谢谢
    猜你喜欢
    • 1970-01-01
    • 2016-02-15
    • 2010-12-02
    • 2016-10-25
    • 2018-09-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-24
    相关资源
    最近更新 更多