Asihttprequest上传文件到 appache服务器,脚本语言php(服务器端),客户端iphone oc
2012-09-23 02:05
831 查看
写在前面的话:
今天又弄了一上午,终于把纠结的问题搞定了,是这样的,我按 http://dancewithnet.com/2010/05/09/run-apache-php-mysql-in-mac-os-x/ 这个你例子把apache服务器搭建好后,然后用AsiHttpRequest这个开源库里的方法实现文件上传功能时,上文件可以上传上去,但上M的文件就不行了,现在终于知道问题在哪了:
sudo vi /etc/php.init 这个设置文件我没把上传限制改,所以 还是默认的 2M ,现在把改大一点就行了 upload_max_filesize= 2000M;
就这小问题纠结了一上午,以后一定要注意!!!
注:
还有一点需要注意的是,要实现上传文件,除了注意对上传文件大小限制外,貌似还得注意权限问题,反正我是刚开始时一直上传不成功,貌似得把 你要上传到的目录要有写权限才行,所以 我执行了如下操作才能正常上传了: sudo chmod 777 //Library/WebServer/Documents
转载自:http://blog.csdn.net/crazy_zhangqiang/article/details/7435579
用于存储上传文件的服务器端php脚本:upload_file.php
<?php
if ($_FILES["file"]["error"] > 0)
{
echo "Error: " . $_FILES["file"]["error"] . "<br />";
}
else
{
echo "Upload: " . $_FILES["file"]["name"] . "<br />";
echo "Type: " . $_FILES["file"]["type"] . "<br />";
echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
echo "Stored in: " . $_FILES["file"]["tmp_name"];
}
move_uploaded_file($_FILES["file"]["tmp_name"],
"./" . $_FILES["file"]["name"]);//将上传的文件存储到服务器
//echo "Stored in: " . "upload/" . $_FILES["file"]["name"];
?>
注:"file"为客户端上传文件时,输入的key值,具体指的是什么看下面代码:
iphone客户端代码:
NSURL *url = [NSURL URLWithString:WEB_SERVICES_URL];
ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url];
[request setFile:@"/Users/mac/Desktop/Zwoptex.app/Contents/Info.plist" forKey:@"file"];
[request setDelegate:self];
[request startAsynchronous];
注:WEB_SERVICES_URL为服务器端脚本的地址比如:http:localhost:8888:/MAMP/upload_file.php
setfile的第一个参数为为客户端上传到服务端的文件,注意必须是全路径(我有疑惑),但在mac 下必须是全路径的,否则不会访问网络,更别提上传文件了
其实就这么简单
客户端第二个方法:该方法不需要使用绝对路径
[request setData:UIImagePNGRepresentation([UIImage imageNamed:@"test.jpg"]) withFileName:@"test.jpg" andContentType:@"image/jpg" forKey:@"file"];
文件的下载:
NSURL *url = [NSURL URLWithString:kCONTACT_PLIST_URL];
ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
[request setDownloadDestinationPath:[PlistManager sharedInstance].contactFilePath];
[request startSynchronous];
注:kCONTACT_PLIST_URL:为网络资源的地址
[PlistManager sharedInstance].contactFilePath:为客户端存储下载文件的路径
今天又弄了一上午,终于把纠结的问题搞定了,是这样的,我按 http://dancewithnet.com/2010/05/09/run-apache-php-mysql-in-mac-os-x/ 这个你例子把apache服务器搭建好后,然后用AsiHttpRequest这个开源库里的方法实现文件上传功能时,上文件可以上传上去,但上M的文件就不行了,现在终于知道问题在哪了:
sudo vi /etc/php.init 这个设置文件我没把上传限制改,所以 还是默认的 2M ,现在把改大一点就行了 upload_max_filesize= 2000M;
就这小问题纠结了一上午,以后一定要注意!!!
注:
还有一点需要注意的是,要实现上传文件,除了注意对上传文件大小限制外,貌似还得注意权限问题,反正我是刚开始时一直上传不成功,貌似得把 你要上传到的目录要有写权限才行,所以 我执行了如下操作才能正常上传了: sudo chmod 777 //Library/WebServer/Documents
转载自:http://blog.csdn.net/crazy_zhangqiang/article/details/7435579
用于存储上传文件的服务器端php脚本:upload_file.php
<?php
if ($_FILES["file"]["error"] > 0)
{
echo "Error: " . $_FILES["file"]["error"] . "<br />";
}
else
{
echo "Upload: " . $_FILES["file"]["name"] . "<br />";
echo "Type: " . $_FILES["file"]["type"] . "<br />";
echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
echo "Stored in: " . $_FILES["file"]["tmp_name"];
}
move_uploaded_file($_FILES["file"]["tmp_name"],
"./" . $_FILES["file"]["name"]);//将上传的文件存储到服务器
//echo "Stored in: " . "upload/" . $_FILES["file"]["name"];
?>
注:"file"为客户端上传文件时,输入的key值,具体指的是什么看下面代码:
iphone客户端代码:
NSURL *url = [NSURL URLWithString:WEB_SERVICES_URL];
ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url];
[request setFile:@"/Users/mac/Desktop/Zwoptex.app/Contents/Info.plist" forKey:@"file"];
[request setDelegate:self];
[request startAsynchronous];
注:WEB_SERVICES_URL为服务器端脚本的地址比如:http:localhost:8888:/MAMP/upload_file.php
setfile的第一个参数为为客户端上传到服务端的文件,注意必须是全路径(我有疑惑),但在mac 下必须是全路径的,否则不会访问网络,更别提上传文件了
其实就这么简单
客户端第二个方法:该方法不需要使用绝对路径
[request setData:UIImagePNGRepresentation([UIImage imageNamed:@"test.jpg"]) withFileName:@"test.jpg" andContentType:@"image/jpg" forKey:@"file"];
文件的下载:
NSURL *url = [NSURL URLWithString:kCONTACT_PLIST_URL];
ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
[request setDownloadDestinationPath:[PlistManager sharedInstance].contactFilePath];
[request startSynchronous];
注:kCONTACT_PLIST_URL:为网络资源的地址
[PlistManager sharedInstance].contactFilePath:为客户端存储下载文件的路径
相关文章推荐
- Asihttprequest上传文件到 appache服务器,脚本语言php(服务器端),客户端iphone oc
- 如何使用ASIHTTPRequest从iOS端向服务器上传文件?
- iOS上传文件到服务器(ASIHttpRequest)
- ASIHttpRequest的子类ASIFormDataRequest 上传音频文件到服务器
- ASIHTTPRequest系列(三):文件上传
- 在C#客户端用HTTP上传文件到Java服务器
- ASIHTTPRequest系列(三):文件上传
- ASIHTTPRequest系列(三):文件上传
- ASIHTTPRequest系列(三):文件上传
- (总结3)WinForm中文件上传服务器:HttpWebRequest .
- ASIHttpRequest上传文件
- ASIHTTPRequest系列(三):文件上传
- 一个简单地应用--从客户端向服务器发送数据.post,get.httpclientget,httpclinetpost,文件上传.
- ASIHTTPRequest系列(三):文件上传
- iOS图片上传服务器(ASIHTTPRequest,SpringMVC)
- ASIHTTPRequest系列(三):文件上传
- ASIHttpRequest上传文件
- (Android)JavaSocket编程,文件上传到服务器,客户端Android,服务器端J2SE
- WinForm中文件上传服务器:HttpWebRequest
- (总结3)WinForm中文件上传服务器:HttpWebRequest