文件上传到临时目录后所执行的action可以指定为10.0.0.25上的文件,这个没问题,但如何指定form上传时所用临时目录所在的服务器呢?我想将其也设置为10.0.0.25,能否可行?
<form action="http://10.0.0.25/UpLoadFile/Default.php" method="post" enctype ="multipart/form-data" runat="server"> 
<input id="File1" runat="server" name="UpLoadFile" type="file" /> 
<input type="submit" name="Button1" value="Button" id="Button1" />
</form>

解决方案 »

  1.   


    应该是我没所清楚,我是想将文件上传到不同的服务器上.
    但表单的上传原理是先将文件上传到本服务器localhost的一个临时目录中,再由action指定的程序来处理这个临时文件.
    现在我是希望表单将临时文件上传到别的服务器上如10.0.0.25上,能否做到?
      

  2.   

    你在临时服务器里写处理页面,然后处理完了,将它存到目标ftp服务器。
      

  3.   

    表单的提交是通过HTTP协议直接提交给action中指定的程序处理的,这个程序可以是在任意服务器上。
    不明白你说的localhost的临时目录什么意思。
    按照你的实例代码,不就是提交给10.0.0.25服务器上的程序处理吗?
      

  4.   


    我是指通过表单上传文件时遇到的情况!上传时,无论action如何处对待被上传文件,表单都会在第一时间将文件上传到服务器的一个临时目录中!
    我的意思是不希望该文件上传到本地服务器的临时目录,而是上传到别服务器的临时目录!就拿我举的例子来说:
    <form action="http://10.0.0.25/UpLoadFile/Default.php" method="post" enctype ="multipart/form-data" runat="server"> 
    <input id="File1" runat="server" name="UpLoadFile" type="file" /> 
    <input type="submit" name="Button1" value="Button" id="Button1" />
    </form>我在浏览器里键入http://10.0.0.20/myform.html 显示的页面有包含如上表单代码,当我选择好文件myuploadfile.txt后提交,表单会将myuploadfile.txt提交到10.0.0.20的一个临时目录中(这个临时目录在php.ini中可以设置,linux系统的话大都是在/tmp中)
    现在问题来了,我不希望将临时文件提交到10.0.0.20的/tmp里,而是提交给10.0.0.25:/tmp中,这能够做到吗?
      

  5.   

    to 南迁的候鸟:
    诚如你所说的,是提交给action来处理,但是处于服务器端的action脚本凭什么得以处理远在客户端的文件呢?
    那是因为在交给action脚本之前,表单将文件先行上传到了php.ini中指定的一个临时目录当中,从而action脚本处理临时目录当中的那个文件!而我正是希望这个临时目录所处的服务器能够由我来选择!
      

  6.   

    你说的是upload_tmp_dir这个php.ini中的参数吗?
    你可以试试修改这个参数到其他服务器上,不过应该是不行的。
    如果可以的话,你可以用ini_set()在程序中修改upload_tmp_dir参数。
      

  7.   

    说过了,表单提交的路径写临时服务器地址,临时服务器处理完毕后,用ftp方法来转到文件服务器上。