我有以下代码,它可以根据需要成功选择多个图像。
angular.module('appControllers', [])
.controller('HomeCtrl', ['$scope', '$rootScope', '$cordovaCamera', function($scope, $rootScope, $cordovaCamera) {
$scope.ready = false;
$scope.images = [];
$rootScope.$watch('appReady.status', function() {
console.log('watch fired '+$rootScope.appReady.status);
if($rootScope.appReady.status) $scope.ready = true;
});
$scope.selImages = function() {
window.imagePicker.getPictures(
function(results) {
for (var i = 0; i < results.length; i++) {
console.log('Image URI: ' + results[i]);
$scope.images.push(results[i]);
}
if(!$scope.$$phase) {
$scope.$apply();
}
}, function (error) {
console.log('Error: ' + error);
}
);
};
}])
参考: - http://www.raymondcamden.com/2015/03/12/selecting-multiple-images-in-a-phonegapcordova-app
我的问题如何使用PHP作为后端编程和Angular Js作为FrontSide上传到服务器?
提前致谢!
答案 0 :(得分:1)
在成功回调中使用fileTransfer插件here。
var options = new FileUploadOptions();
options.fileKey = "file";
options.fileName = fileURL.substr(fileURL.lastIndexOf('/') + 1);
options.mimeType = "image/jpg"; //or for any other extention, use fileURL.split('.').pop();
var ft = new FileTransfer();
ft.upload(fileURL, encodeURI("http://some.server.com/upload.php"), success_callback, error_callback, options);
关于如何处理发送到您服务器的文件,请查看here。
我查看了fileTranfer插件的文档,发现它默认为“chunked”模式。我不确定这个特定的插件是否有一个现成的开箱即用的php库(让我知道是否有,因为我打算在很快的时候做你现在正在做的事情)但是这个chunked模式方法已被充分记录并广泛使用,因此您应该能够找到解决方案。
希望其他人看到这个帖子并给你真正的帮助。