简体   繁体   English

如何从使用Titanium开发的iPhone应用程序上传图像

[英]How to upload images from iPhone app developed using Titanium

I finally landed up in developing an iPhone app using Titanium Mobile. 我终于开始使用Titanium Mobile开发iPhone应用程序了。 Now the problem I face is, Im able to run the app, and the app also sends the image to the server. 现在我遇到的问题是,我能够运行应用程序,应用程序也将图像发送到服务器。 But Im not able to see the file that got uploaded to the server. 但我无法看到上传到服务器的文件。 I have pasted the iPhone app's code to send image to the server and also, the PHP file that would receive the file from the app. 我已粘贴iPhone应用程序的代码将图像发送到服务器,以及将从应用程序接收文件的PHP文件。

var win = Titanium.UI.currentWindow;

var ind=Titanium.UI.createProgressBar({
width:200,
height:50,
min:0,
max:1,
value:0,
style:Titanium.UI.iPhone.ProgressBarStyle.PLAIN,
top:10,
message:'Uploading Image',
font:{fontSize:12, fontWeight:'bold'},
color:'#888'
});

win.add(ind);
ind.show();

Titanium.Media.openPhotoGallery({

success:function(event)
{
    Ti.API.info("success! event: " + JSON.stringify(event));
    var image = event.media;

    var xhr = Titanium.Network.createHTTPClient();

    xhr.onerror = function(e)
    {
        Ti.API.info('IN ERROR ' + e.error);
    };
    xhr.onload = function()
    {
        Ti.API.info('IN ONLOAD ' + this.status + ' readyState ' + this.readyState);
    };
    xhr.onsendstream = function(e)
    {
        ind.value = e.progress ;
        Ti.API.info('ONSENDSTREAM - PROGRESS: ' + e.progress+' '+this.status+' '+this.readyState);
    };
    // open the client
    xhr.open('POST','http://www.myserver.com/tmp/upload2.php');
    xhr.setRequestHeader("Connection", "close");
    // send the data
    xhr.send({media:image});

},
cancel:function()
{

},
error:function(error)
{
},
allowImageEditing:true
});

And here is the PHP code on the server: http://www.pastie.org/891050 这是服务器上的PHP代码: http//www.pastie.org/891050

I'm not sure where I'm going wrong. 我不确定我哪里出错了。 Please help me out in this issue. 请帮我解决这个问题。 Would love to provide if you need some more information. 如果您需要更多信息,愿意提供。

use following code for Php: 使用以下代码为Php:

$target_path = "uploads/";

$target_path = $target_path .  $_FILES['media']['name']; 

if(move_uploaded_file($_FILES['media']['tmp_name'],$target_path)) {
echo "The file ".  basename( $_FILES['media']['name']). 
" has been uploaded";
} 
else
{
echo "There was an error uploading the file, please try again!";
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM