Я использую Froalo для редактирования текста, но у меня возникают трудности с правильной загрузкой изображения. Тестирование на локальном хосте.json_encode форматирование - froala
В документации сказано, что
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,
- файл получает загружены на сервер,
поджигатель говорит, что upload.php отвечает массив $ _FILES и:
{ссылка: "../ фото/sama1.jpg"}
Это все кажется хорошо, но сюда ala отвечает, что «что-то» пошло не так, и изображения не появляются в редакторе.
Может ли это быть из-за двойных кавычек вокруг изображения?
JSON никогда не возвращает ни одну строку с кавычками. Они должны быть в двойных кавычках. Однако 'json_encode()' может автоматически позаботиться об этом. –
Спасибо Мунташир. – thiebo