Я пытаюсь сделать снимок в своем приложении phonegap, а затем использовать плагин FileTransfer для загрузки его на свой сервер. Я получаю код ошибки 1, но нет другого объяснения - это ОЧЕНЬ расстраивает. Я просмотрел каждую документацию и блог, известные человеку без везения.Кордова FileTransfer Плагин код ошибки 1 для загрузки изображения
Я использую базовый сервер LAMP, и он продолжает давать мне код http 500. Я 99.9% уверен, что эта ошибка специфична для моего сервера, потому что я проверил это с другим веб-сервером, и код работает нормально. Вот ответ:
{"code":1,"source":"file:///storage/emulated/0/Android/data/io.cordova.xxappxx/cache/1477607161788.jpg","target":"https://server.com/php/uploadPhoto.php","http_status":500,"body":"\t","exception":"https://server.com/php/uploadPhoto.php"}
Ниже мой передний конец кода расслоение плотной:
function uploadPhoto(imageURI) {
var options = new FileUploadOptions();
options.fileKey="file";
options.fileName=imageURI.substr(imageURI.lastIndexOf('/')+1);
alert(options.fileName);
options.mimeType="image/jpeg";
var params = {};
params.value1 = sessionStorage.getItem("token");
options.params = params;
options.chunkedMode = false;
options.headers = {Connection: "close"};
var ft = new FileTransfer();
ft.upload(imageURI, "https://servername.com/php/uploadPhoto.php", function(result){
console.log(JSON.stringify(result));
}, function(error){
console.log(JSON.stringify(error));
}, options, true);
}
А вот мой фоновым PHP код, который вызывается (uploadPhoto.php):
<?php
session_start();
header('Access-Control-Allow-Origin : *');
$new_image_name = "$userId.jpg";
move_uploaded_file($_FILES["file"]["tmp_name"], "/var/img/".$new_image_name);
?>
Вы проверили конфигурацию своего сервера? сделайте простой трюк, если вы загружаете большой файл с помощью функции move_uploaded_file() в PHP. 1) Создайте файл .htaccess в корневой папке веб-сервера. 2) Поместите следующий код в сторону файла .htaccess и сохраните его. 'php_value upload_max_filesize 8M php_value post_max_size 8M php_value max_execution_time 200 php_value max_input_time 200' Или изменить в файле php.ini и установить конфигурацию – Deepak
я думал, что это, возможно, придется делать с размером ... но я просто реализован это и по-прежнему получает тот же результат. Я не уверен, что еще попробовать? Я пытаюсь загрузить base64encode и загрузить его с помощью ajax ... Я надеюсь, что это работает – brdeav39
Я думаю, что это происходит из-за максимальной загрузки size.try, загружая с меньшим размером. Или повторно проверьте ваш путь к каталогу и папку с папкой – Deepak