【问题标题】:PhoneGap take/select image then enter name into input field then upload image/form onclickPhoneGap 拍摄/选择图像,然后在输入字段中输入名称,然后上传图像/表格 onclick
【发布时间】:2013-03-26 01:55:02
【问题描述】:

我能够从我的 PhoneGap 应用程序将图像上传到我的网络服务器就好了。但我想要做的是拍照而不是让它自动上传,而是等到我在表单输入字段中输入我的名字,然后当我点击提交时,它会提交表单并上传图像。然后,处理文件的 php 脚本会将名称连接到图像名称上,这样我就可以知道是谁上传了它。

我希望人们能够为比赛提交照片,但我需要一种将用户与他们提交的照片进行匹配的方法。如果不是太复杂,也许还有另一种方法?

这是我上传的 javascript

function captureSuccess(mediaFiles) {
                var i, len;
                for (i = 0, len = mediaFiles.length; i < len; i += 1) {
                    uploadFile(mediaFiles[i]);
                }

            }

            // Called if something bad happens.
            //
            function captureError(error) {
                var msg = 'Something went wrong'
                navigator.notification.alert(msg, null, 'Uh oh!');
            }

            // A button will call this function
            //
            function captureImage() {
                // Launch device camera application,
                // allowing user to capture up to 2 images
                navigator.device.capture.captureImage(captureSuccess, captureError, {limit: 2});
            }

            // Upload files to server
            function uploadFile(mediaFile) {

                var ft = new FileTransfer(),
                path = mediaFile.fullPath,
                name = mediaFile.name;

                ft.upload(path,
                          "http://www.example.com/upload.php",
                          function(result) {

                          console.log('Upload success: ' + result.responseCode);
                          console.log(result.bytesSent + ' bytes sent');
                          var user_id = Math.floor(Math.random()*1001)
                          var day_uploaded = new Date().getDay();
                          var hour_uploaded = new Date().getHours();
                          var minute_uploaded = new Date().getMinutes();
                          var sec_uploaded = new Date().getSeconds();
                          var msg = 'Your file was uploaded! Your picture ID is ' + day_uploaded + hour_uploaded + minute_uploaded + sec_uploaded;
                          navigator.notification.alert(msg, null, 'Thanks!');
                          },
                          function(error) {

                          console.log('Error uploading file ' + path + ': ' + error.code);
                          },
                          { fileName: name });   
            }

【问题讨论】:

    标签: php jquery json cordova mobile


    【解决方案1】:

    是的,你可以

    var _uploadPhoto = function(id, name, data) {
        var _data = {
            'id' : id,
            'fileName' : name,
            'image' : data
        };
        $.ajax({
            type : 'POST',
            data : JSON.stringify(_data),
            url : 'your_url'
            success : function(data) { },
            error: function(error) { }
        });
    };
    

    【讨论】:

      猜你喜欢
      • 2019-07-05
      • 2021-09-07
      • 1970-01-01
      • 2023-04-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-12-06
      相关资源
      最近更新 更多