我一直在监控网站在上传文件时收到的参数(通过输入类型=“文件”)。令人惊讶的是,参数及其值看起来像这样:
参数:upfile
value:filename =“这是上传的file.png的名称”内容类型:image / x-png
现在在对服务器页面的POST请求中,文件名及其类型被传递给参数,但该文件名的路径呢?存储该路径的位置,以便服务器页面可以在正确的位置上传文件?
另外,我想知道是否可以通过任何方式指定路径,而不是输入类型=“文件”,因为它不可能,但对服务器(虽然这个问题可能很大程度上取决于如何服务器端页面是脚本化的。
感谢您的回答。
答案 0 :(得分:0)
我通常使用PHP,所以我将在这里解释它。
上传文件时,会将其放在临时目录/tmp
。
PHP提供了一种通过名为move_uploaded_file($filename, $path_to_move_to);
在PHP中,有关上传文件的文件大小,文件名等信息不在包含所有$_POST
信息的数组中,而是放在$_FILES
数组中。
如果您有输入:<input type="file" name="userfile" />
,则可以通过move_uploaded_file($_FILES['userfile']['name'], '/dir/to/where/i/want_files_to_go');
我认为Perl可以类似地处理文件上传,但是自从我触及Perl文件上传器以来已经有一段时间了。