$z=ftp_put($connect_id,"kao.jpg","pic",BINARY);1 这里面的pic不是一个文件名,请改成文件名
2 楼主是不是把这个文件传到服务器里面运行,希望能够把自己机器里
的东西上传到服务器?php里面的ftp不支持从客户端传东西到服务器端,
因为PHP本身就是运行于服务器端.解决的方法有两个,
1 是使用表单,一个一个文件的ftp
2 将自己的机器装一个能运行PHP的服务器软件,在自己的服务器里运
会这个文件,PHP支持服务器-->服务器的FTP

解决方案 »

  1.   

    $ftp_connect=ftp_connect("http://www.aa.com");
    $ftp_login=ftp_login($ftp_connect,"aa","aa");
    if(!$ftp_connect || !$ftp_login)
    {
      echo "不能连接";exit;
    }
    //$FILE["pic"]["tmp_name"]为提交的变量
    $ftp_put=ftp_put($ftp_connect,"kao.jpg","$FILE[\"pic\"][\"tmp_name\"]",FTP_BINARY);
    IF($ftp_put)
      echo "ok";
    else
      echo "no";
      

  2.   

    楼上的,我那是笔误pic改为$pic
      

  3.   

    ftp成了php的鸡肋骨了吗?用起来这么不爽,搜了一下都遇到这个最基本的总是,而大多又没有解决,ftp
      

  4.   

    嗯,PHP本身就是基于服务器端的东西,非要把客户端的工作让它做,
    好象不怎么公平.不过,个人觉得上面的两种方法,应该能够解决问题了.
    楼主可试一下
      

  5.   

    不对,我说的不是传到服务器,我是说,你在自己机器上架个服务器,
    从自己的服务器传到你的供应商的服务器.我现在就在试这个FTP(够头疼的),我可以成功的.再试一下
      

  6.   

    fput($conn_id,$pic_name,$pic,FTP_BANARY);
    $pic是要上传的变量,
    结果显示
    Warning: ftp_put() [function.ftp-put]: Could not create file. in d:\apache\htdocs\test.php on line 12
      

  7.   

    $z=ftp_put($connect_id,"kao.jpg","pic",BINARY);改成$z=ftp_put($connect_id,"/kao.jpg","pic",BINARY);试一下
      

  8.   

    $connect_id=ftp_connect("http://www.xx.com"); ???
    协议不对!至少得是ftp://www.xx.com通常ftp服务器不会允许在其根目录中写,所以连接后应进入自目录
    $z=ftp_put($connect_id,"kao.jpg","pic",BINARY);
    要先确认目标文件不存在!如存在要先删除
      

  9.   

    还要先删除呀...嗯,又学了一招,这以前可不知道,多谢xuzuning(唠叨) 老大
      

  10.   

    本地的文件,你换成绝对路径试看看呢?还有,你的那个FTP的IP地址,用户名,密码保证正确吗?
      

  11.   

    正确,刚刚还用cuteftp上传文件啊
      

  12.   

    又试了一次,可以FTP成功,而且,远程服务器就算是有相同名的文件存在,
    也可以覆盖,不需要删除.楼主你用一个FTP软件试你的用户名,密码呢?
    我都怀疑是不是那个有错了
      

  13.   

    刚试了,用cuteftp可以登陆啊这个提示错误:不能创建文件,说明已经与FTP连接并且已经登陆了,只是不能创建文件
    Warning: ftp_put() [function.ftp-put]: Could not create file. in d:\apache\htdocs\test.php on line 12
      

  14.   

    1,我用浏览按钮,选择磁盘里的文件,所以本地文件是存在的
    2,本地文件路径同上,没错误的
    3,ftp_put($conn_id,"./test/$pic_name","$pic",FTP_BINARY);而test文件夹是存在的并且权限为777
    4,test目录具有写权限
    对照了一下,没一个符合
      

  15.   

    那就倒过来弄,先不要用表单来选择,先直接使用PHP文件来FTP一个文件看看,
    把路径写成绝对路径,如果可以FTP,就说明不是FTP的问题,是表单的问题.
      

  16.   

    <?
        $ftp_connect=ftp_connect("http://www.aa.com");
    echo $ftp_connect;echo "<p>";
    $ftp_login=ftp_login($ftp_connect,"aa","aa");
    echo $ftp_login;
    if(!$ftp_connect || !$ftp_login)
    {
      echo "不能连接";exit;
    }
    $ftp_put=ftp_put($ftp_connect,"./test/ksasso.jpg","d:\1.jpg",FTP_BINARY);
    IF($ftp_put)
      echo "ok";
    else
      echo "no";
    ?>上传不上去
      

  17.   

    还有我把这段程序放到那个空间上,会出现连不上ftp服务器的情况,也就是说
    $id=ftp_connect("ftp://www.aa.com");
    $id为空,连接不成功
    空间提供商会管吗?
      

  18.   

    不对!!!
    楼主!!!!你那段程序应该是放在本地机器上运行的!!!也就是说,你在本地装了 Apache ,或者IIS,能够运行PHP的那个机器里运行才
    可以,如果你传到服务器上去运行, 是绝对FTP不了的.
      

  19.   

    晕...我一开始就说了,PHP的FTP上传只能服务器-->服务器  这么传.你都是放到供应商那里传的?那是不行了.你在本机上试看看?
      

  20.   

    我把程序上传到空间上才能给客户用呀,如果ftp只能客户机与服务器,岂不是要求客户的机子上要装apachephpmysql?这样是行不通的
      

  21.   

    单个文件上传使用FTP,如果用上表单的,那应该可以的.
    不过,如果你是使用表单上传,可能是漏了一个动作.以前看过资料,记得应该是这样
    1 将本地文件上传至服务器
    2 因为上传至服务器后,服务器马上会把上传来的文件删除,所以要把文件拷入
    你想放的地方.不过,这好象不是用PHP的吧,HTML直接可以这么弄
      

  22.   

    我是php的初学者,我想请教大家一下,怎样把数据从数据库读出,并在页面上显示每行4条记录,然后换行输出接下的4条,以至全部输出。