1

我正在使用 Froalo 进行文本编辑,但我在让图像上传正常工作时遇到了困难。在本地主机上测试。

文件说

imageUploadURL: '/upload_image.php',

应该返回一个格式如下的 json 字符串:

{ link: 'path/to/image.jpg' }

我的 javascript 看起来是这样的:

$(function() {
    $('#edit').froalaEditor({
        language:'fr',
        imageUploadURL: 'upload.php'
    })
});

我的 upload.php 看起来像这样:

var_dump($_FILES);
require('clean.php'); // removes french special characters
$image = clean($_FILES['file']['name']);
$uploaddir = '../photos/';
$uploadfile = $uploaddir . basename($image);
$retour = ['link'=> $uploadfile];
$b = json_encode($retour);
$array_final = preg_replace('/"([a-zA-Z]+[a-zA-Z0-9_]*)":/','$1:',$b);
if( move_uploaded_file($_FILES['file']['tmp_name'],$uploadfile)) {
    echo stripslashes($array_final);
} else {
    echo "Lo kol kakh tov...";
}

当我通过 froalaEditor 从文本编辑器运行它时,

  • 文件被上传到服务器,
  • firebug 说 upload.php 回答数组 $_FILES 和:

    {链接:"../photos/sama1.jpg"}

这一切似乎都很好,但 froala 回答说“某事”出了问题并且图像没有出现在编辑器中。

可能是因为图片网址周围有双引号吗?

4

1 回答 1

0

解决方案很简单:问题是这样的:

{link:"../photos/sama1.jpg"}

它不喜欢相对路径,因此将其更改为:

{link:"/var/www/html/blabla/photos/sama1.jpg"}

或这个

{link:"/photos/sama1.jpg"}

成功了:)

于 2016-03-31T20:53:59.310 回答