从使用Monaca和PhoneGap制作的应用上传图片

时间:2015-03-27 21:52:22

标签: android cordova monaca

我有这个代码用于将表单数据发送到Web服务器。工作正常。

$('form').submit(function(){
            //var landmarkID = $(this).parent().attr('data-landmark-id');
            var postData = $(this).serialize();

            // +'&lid='+landmarkID
            $.ajax({
                type: 'POST',
                data: postData,
                url: 'http://cykel.donslund.net/save_bicycle.php',
                success: function(data){
                    console.log(data);
                    alert('Your comment was successfully added');
                },
                error: function(){
                    console.log(data);
                    alert('There was an error adding your comment');
                }
            });
            return false;
        });

在我的应用程序中,我也拍了一张照片。如何将该图片与表单数据一起发送到服务器?

1 个答案:

答案 0 :(得分:0)

我昨天做了同样的事。我有一个foto选择功能。我给你角度代码和php文件。



$scope.selectPicture = function() { // select picture action
  var cameraOptions = {
    quality: 50,
    sourceType: Camera.PictureSourceType.PHOTOLIBRARY,
    destinationType: Camera.DestinationType.FILE_URI,
    targetWidth: 400,
    targetHeight: 400,
    allowEdit: true
  };
  var success = function(data) {
    $scope.$apply(function() {

      $scope.picData = data;
      var fileURL = data;
      var options = new FileUploadOptions();
      options.fileKey = "file";
      options.fileName = fileURL.substr(fileURL.lastIndexOf('/') + 1);
      options.mimeType = "image/jpeg";
      options.chunkedMode = true;

      var params = {};
      params.id = numeroData.get();

      options.params = params;


      var ft = new FileTransfer();
      ft.upload(fileURL, encodeURI("http://www.example.net/upload.php?key=" + idData.get()), viewUploadedPictures, function(error) {
        alert('erreur');
      });

      function viewUploadedPictures() {

      }


    });
  };
  var failure = function(message) {
    alert('Failed because: ' + message);
  };

  navigator.camera.getPicture(success, failure, cameraOptions);
};




<?php
header('Access-Control-Allow-Origin: *'); 
if(isset($_GET['key'])){
    move_uploaded_file($_FILES["file"]["tmp_name"], "img/".$_GET['key'].".jpg");
}
?>