通过FTP上传文件

flyown34317 2012-02-12 08:57:36
我通过网页写的ftp上传,可是在上传中发现比较小的文档都可以顺利地上传到ftp服务器上,可是要是大的文档(好像是超过2G的)就会显示:ftp_nb_fput() expects parameter 3 to be resource, boolean given in这是怎么回事?怎么解决哈?求专家指导!
...全文
122 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
黄袍披身 2012-02-12
  • 打赏
  • 举报
回复
不管是或不是,我都不关心。
回到你的问题上,关于php上传超过2g文件的问题一直有一些不正常的反馈,不过我不确定这个是否也适用于使用php的ftp方式,所以代码不存在问题可能也会出错,或者不出错但是文件就是无法上传.
php.ini 再修改 max_execution_time=0
和 memory_limit=(1G 256M 比例)

重启apache 之后尝试一下。
flyown34317 2012-02-12
  • 打赏
  • 举报
回复
我测试了,好像是fopen出错了,要是大文档的话,fopen根本就打不开,然后报错了。。。
flyown34317 2012-02-12
  • 打赏
  • 举报
回复
function Uplode($upfiles,$name,$type,$size,$tmp_name){
echo "文件名是:".$name."<br>";
echo "文件类型为:".$type."<br>";
echo "文件大小为:".$size."字节<br>";
echo "文件的临时名称是:".$tmp_name;

$date=date('Ymdhis');//得到当前时间,如;20070705163148 ."<br>".dirname(__FILE__)."<br>"
$linname=explode('.',$name); //将文件名以'.'分割得到后缀名,得到一个数组
$newPath=$date.".".$linname[1]; //得到一个新的文件为'20070705163148.jpg',即新的路径
echo $newPath."<br>";
$oldPath=$_FILES['upfiles']['tmp_name'];//临时文件夹,即以前的路径
//echo $newPath1=$newPath;
//echo $oldPath1=$name;
$new_upload_file_ext = strtolower(end(explode(".", $_FILES['upload_file']['name']))); //取得被.隔开的最后字符串
include("conn.php");
$local_file=$tmp_name;
$fb=fopen($local_file,'r');
$ret = ftp_nb_fput($conn_id,"$newPath",$fb,FTP_ASCII);
//$ip=$_SERVER['REMOTE_ADDR'];
//echo $time=date("Y-m-d H:m:s",time());


while ($ret == FTP_MOREDATA){
// 在这里可以加入其它代码
//echo ".";
// 继续传送...
$ret = ftp_nb_continue ($conn_id);
}if ($ret != FTP_FINISHED)
{
echo "上传文件中发生错误...";
exit(1);
}
}这是我写的上传函数,conn.php是链接ftp服务器的一些函数,然后,运行提示的错误是:Warning: ftp_nb_fput() expects parameter 3 to be resource, boolean given in E:\wamp\www\creative\function.php on line 27,第27行就是ftp_nb_fput()函数的那行,希望大侠可以帮助!



第二:我没用伎俩,我真的是女生,然后现在还在上大学,在这个行业中自称一句小妹好像也不过分!所以:请谅解!
黄袍披身 2012-02-12
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 flyown34317 的回复:]

参数出错?不是,可是小的文档都可以上传,我刚才又重新试了一下,只要文档超过2M上传就出错,我改了php.ini中的允许最大上传量的那个限制,又重启了,可是还是不行!
不是自称小妹,是因为在一个群众,一个大哥告诉我,这样的话,有更多的大哥可以帮助我,只是想解决问题,没太多别的。如果这样错了,那我以后不这样做了,不好意思哈!
[/Quote]

第一个提示的确是我说的那样,所以你得查看代码 给自己提下问题为什么小文件没有问这个参数问题。因为没有代码你说什么都是浮云,对我们来说。
第二个大哥们已经伤痕累累,多次受到打击,这种伎俩只会让这些大哥们更加厌恶,咔咔。
flyown34317 2012-02-12
  • 打赏
  • 举报
回复
参数出错?不是,可是小的文档都可以上传,我刚才又重新试了一下,只要文档超过2M上传就出错,我改了php.ini中的允许最大上传量的那个限制,又重启了,可是还是不行!
不是自称小妹,是因为在一个群众,一个大哥告诉我,这样的话,有更多的大哥可以帮助我,只是想解决问题,没太多别的。如果这样错了,那我以后不这样做了,不好意思哈!
黄袍披身 2012-02-12
  • 打赏
  • 举报
回复
ftp_nb_fput() 函数 需要传递的资源类型参数错误。给了个布尔值。检查自己的代码

是不是xx后都喜欢自称小妹?喜欢给把的感觉?
flyown34317 2012-02-12
  • 打赏
  • 举报
回复
网上好像都没有这个函数(ftp_nb_fput())的详解,好像很好有人这样去写啊。。看到的大侠如果懂得的话,给留个言哈,在线等!也可以直接加我QQ:908695719,小妹等待指教!

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧