免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 9307 | 回复: 11
打印 上一主题 下一主题

php上传文件可以不用input name="userfile" type="file"吗? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-06-17 17:52 |只看该作者 |倒序浏览
各个教材都说:

  1. <form enctype="multipart/form-data" action="__URL__" method="POST">
  2.     <!-- MAX_FILE_SIZE must precede the file input field -->
  3.     <input type="hidden" name="MAX_FILE_SIZE" value="30000" />
  4.     <!-- Name of input element determines name in $_FILES array -->
  5.     Send this file: <input name="userfile" type="file" />
  6.     <input type="submit" value="Send File" />
  7. </form>
复制代码

如果我是通过截图工具来获取文件名,而不是通过

  1. <input name="userfile" type="file" />
复制代码

来获取文件呢?
不知道这个表单该怎么写呢?

论坛徽章:
0
2 [报告]
发表于 2008-06-17 21:56 |只看该作者
这跟php没有关系,是html的东西

论坛徽章:
1
技术图书徽章
日期:2013-12-05 23:25:45
3 [报告]
发表于 2008-06-17 22:04 |只看该作者
如果我是通过截图工具来获取文件名

你的截图工具将如何操作?

论坛徽章:
0
4 [报告]
发表于 2008-06-18 10:22 |只看该作者
是这样的,我的截图工具嵌到页面中,用户截图后,那个工具将会把这个图片存放在一个临时文件中,并且返回这个文件的路径。
   我是想把这个文件路径做为参数传递给form,而不是通过input name="userfile" type="file"来获取文件名,不知道怎么写呢?

论坛徽章:
0
5 [报告]
发表于 2008-06-18 10:53 |只看该作者
form_name.userfile.value='得到的路径'
试试。

论坛徽章:
0
6 [报告]
发表于 2008-06-18 11:15 |只看该作者
写了个简单测试程序:
HTML部分如下

  1. <html>
  2. <body>
  3. <form  id='frmTest' enctype="multipart/form-data" action="upload.php" method="POST">
  4.     Send this file: <input name="NewFile" type="file" />
  5. </form>
  6. <script>
  7. document.getElementById('frmTest').NewFile.value="t.jpg";
  8. document.getElementById('frmTest').submit();
  9. </script>
  10. </body>
  11. </html>
复制代码

抓包发现Post的数据如下:
NewFile        filename="" Content-Type: application/octet-stream

可见这个是失败的。
其中t.jpg是和这个htm,upload在同一个文件夹的,相信不是路径的问题。
如果是用<input name="NewFile" type="file" /> 来浏览文件的话,应该抓包结果是:
NewFile        filename="C:\Documents and Settings\admin\t.jpg" Content-Type: image/pjpeg

论坛徽章:
0
7 [报告]
发表于 2008-06-18 17:49 |只看该作者
发现了,js基于安全考虑,是不允许给 <input name="NewFile" type="file" /> 里面的input付value值的,所以我得写过插件来往服务器传输文件了。

论坛徽章:
0
8 [报告]
发表于 2008-06-18 22:49 |只看该作者
lz这个应用有点可怕...

论坛徽章:
0
9 [报告]
发表于 2008-06-19 13:21 |只看该作者
可以折中一下,将图片内容 BASE64 (或者其他类似的方式)编码成可打印的ASCII字符后,通过text提交,当然文件大的话可能要拆几次。

论坛徽章:
0
10 [报告]
发表于 2008-06-20 09:02 |只看该作者
原帖由 sunnyfun 于 2008-6-19 13:21 发表
可以折中一下,将图片内容 BASE64 (或者其他类似的方式)编码成可打印的ASCII字符后,通过text提交,当然文件大的话可能要拆几次。

sunnyfun可以给点示范代码吗?
这个idea我还真的没有想过
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP