5.6.php.htm
来自「php5的最新帮助文档」· HTM 代码 · 共 144 行 · 第 1/2 页
HTM
144 行
<html>
<head>
<meta content="text/html; charset=gb2312" http-equiv=Content-Type>
<title>广告轮播</title>
<style type="text/css">
a {text-decoration: none;color:#6666ff;}
a:hover {color:#ff0000;}
</style>
</head>
<body bgcolor=ffffff leftmargin=0 topmargin=0 marginheight=0 marginwidth=0>
<p>
<div align=center><table border=0 width=70%><tr>
<td valign=middle width=20><hr size=1 width=100%></td>
<td valign=middle nowrap><font color=e06060 size=+2><b>广告轮播</b></font></td>
<td valign=middle width=100%><hr size=1 width=100%></td>
</tr></table></div><p>
<div align=center><table border=0 width=70%><tr><td>
网络广告,变成了 Internet 上的热门学问。而 468x60 更变成了广告人员绞尽脑汁的尺寸。<p>
在处理广告时,若能直接使用浏览器将广告的 468x60 图文件送到处理广告的服务器中,相信是件很舒服的事,不用再开 FTP 程序,搞大半天只为了 upload。<p>
这个问题,是所有 Web CGI 程序的痛,包括 ASP、Prel....等等,都需要再经过系统元件的增加才能达成。号称最强的 Web CGI 程序: PHP,在这方面的表现没有令人失望,甚至傲视其它的 CGI 工具。<p>
File Upload 功能在 RFC 1867 文件有有详细的说明,是利用特殊的文件格式 (content-type) multipart/form-data。值得注意的是浏览器一定要用 Netscape 3.0 以上或 MS Internet Explorer 4.0 以上的版本才能将文件上传。<p>
先看下面的 HTML 源代码<p>
<div align=center><table border=1 bgcolor=ffe0e0><tr><td>
<font color="#000000">
<form enctype="multipart/form-data" action="next.php" method=post><br>您的大名: <input type=text name=user><br><br>文件名称: <input name="myfile" type="file"><br><br><input type="submit" value="送出"><br></form><br></font>
</td></tr></table></div><p>
在 form 的标签中,要加入 enctype="multipart/form-data" 的字符串,表示用户输入的资料上有文件上传,同时 method 一定要用 POST 而不能用 GET。<p>
在上面的码中,若用户姓名填入 Wilson Peng,并选 c:\myphoto.gif 的文件,在用户按下送出键后,浏览器则传送出下面的 POST 资料。<p>
<pre>
Content-type: multipart/form-data, boundary=AaB03x
--AaB03x
content-disposition: form-data; name="user"
Wilson Peng
--AaB03x
content-disposition: form-data; name="myfile"
Content-type: multipart/mixed, boundary=BbC04y
--BbC04y
Content-disposition: attachment; filename="myphoto.gif"
Content-type: image/gif
Content-Transfer-Encoding: binary
...myphoto.gif 内容略...
--BbC04y--
--AaB03x--
</pre><p>
看到上面的资料中,boundary=AaB03x 即为分开不同字段资料的信息,其中的 AaB03x 编码方法,视浏览器的版本不同而异,通常是浏览器哈稀产生的。之后就可以看到用 --AaB03x 来隔开不同的字段。<p>
以上面为例,处理 form 的 action 程序 next.php,会主动产生四个变量,见下表<p>
<table border=1>
<tr><th>变量名</th><th>说明</th></tr>
<tr><td>$myfile</td><td>即上传的文件内容</td></tr>
<tr><td>$myfile_name</td><td>上传文件在用户端的名称</td></tr>
<tr><td>$myfile_size</td><td>上传文件的大小</td></tr>
<tr><td>$myfile_type</td><td>上传文件的格式,如 "image/gif"</td></tr>
</table><p>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?