首 页   · 站长博客 · 用户注册 · 会员登陆  · 会员排行  ·最新主题  ·最近回复  精华区  版权声明  ·论坛管理
  当前登录身份:游客,请先登录。  笔名: 口令: 验证码:   
楼 主  index »  PHP安装/语法/函数 » [原创]急急!高手救小弟一把.ftp读写问题!!!  


  作者:fly2001ok
  注册时间:2004-07-31
  主题/回复:2/0
  积分:410
  等级:★★☆(五级)
  称号:略有小成

  liwei109@163.com..
  未提供
  www.

 

 发表:2004-07-31 01:36:06 阅读 1945 次 回复 1 次 得分2  |   字号 字色
[原创]急急!高手救小弟一把.ftp读写问题!!!
以下程序运行成功:但只是在服务器上建立一个名为china.txt的空文件.文件中为什么没有内容?(注:对服务器有777完整

操作权限);这个问题急了我一天.请高手帮忙!!!其它方法在服务器上创建文件也可以.
<?
$filename="china.txt";
if (!$handle =fopen("ftp://****:***@www.***.cn/$filename", "w")) {
     print "不能打开文件 $filename";
     exit;
    }
    $somecontent="添加这些文字到文件\n";
    // 将$somecontent写入到我们打开的文件中。
    flock($handle,LOCK_EX);  
    if (!fputs($handle, $somecontent)) {
    print "不能写入到文件 $filename";
    exit;
    }
    print "成功地将 $somecontent 写入到文件$filename";
    fclose($handle);
?>
 
 1#楼  
 
  回复人:一起PHP
  注册时间:2004-02-27
  主题/回复:247/1521
  积分:4649
  等级:★★★★★☆(十一级)
  称号:论坛圣人

   
 1#楼 发表于2004-08-04 21:57:18  评分:2 

经过我反复测试,发现,用fopen()按照上述方法,打开本地文件,没有任何问题,打开和写入都很正常。但是如果一旦带开ftp的远程文件,则第一次运行不犯回错误,也自动创建了china.txt,但是,第二次运行,也就是china.txt已经存在的时候,直接fopen()就打不开。

可见,用fopen()打开远程文件并执行写入是有问题的。我察看php文档,关于fopen()有如下解释:若 FTP 服务器没有支持被动模式 (passive mode ftp) 则返回失败值。不知道是不是这个原因。


如果这个fopen直接操作ftp服务器有问题,可以考虑使用php的一系列ftp函数。一切文本文件生成之后,再用ftp函数上传到服务器。
  页数1/1首页 « 1 » 末页
  发表回复:您还没有登陆,无法发表回复。请先[登陆]

一起PHP技术联盟 主办:一起PHP 联系方式:站长QQ:4304410 QQ群:8423742 20159565 站长博客 E-mail: nqp@nqp.me 执行时间:0.004sec
SimsmaBBS 2008 (v6.0) Developed by 17php.com,Copyright(C)2003-2010 All rights reserved. 副本授权:一起PHP官方专用版