返回列表 发帖

十天学会php之第十天

9 @) X2 X* M: p; |
学习目的:学会用PHP上传文件和发邮件
6 y  B. `! n' n" m) Y+ E( g7 P: Y上传文件表单必须加上 enctype="multipart/form-data" 9 V: W9 R& i4 s2 p; L) q0 [
<input type="file" name="file">. W6 `, a4 t7 z
下面看一下代码:
6 b/ k# U+ v8 l$ r2 v
, G" O: g* d6 M6 R7 {; d1 ~: g
$f=&$HTTP_POST_FILES['file'];
# b1 T! r0 D! {+ c; {$dest_dir='uploads';//
设定上传目录
7 ?/ x3 ?9 ]- B- }  f$dest=$dest_dir.'/'.date("ymd")."_".$f['name'];//我这里设置文件名为日期加上文件名避免重复
( D- l$ ^  p, o8 d$r=move_uploaded_file($f['tmp_name'],$dest);: |1 X5 G9 o8 R. {* Q6 k8 {
chmod($dest, 0755);//
设定上传的文件的属性$ J+ M% a" I/ U0 I7 Z4 B  A4 [( B
上传的文件名为date("ymd")."_".$f['name'] ,可以在以后插入到数据库的时候用到,PHP实际上是把你上传的文件从临时目录移动到指定目录。move_uploaded_file($f['tmp_name'],$dest);这是关键
# i2 @8 O! V7 a0 ]9 ~8 d至于发邮件就更加简单,可以使用mail()函数% U9 t' p3 B. h; {+ m5 a

4 j/ q% w+ O' r& qmail("收件人地址","主题","正文","From:发件人\r\nReply-to:发件人的地址");
# L2 }* ?2 K- E/ O- r7 [6 I, w% {6 m: t6 h
不过mail()需要服务器的支持,在WINDOWS下还需要配置SMTP服务器,一般来说外面的LINUX空间都行。
9 V) T7 s6 Z& h8 e0 f
好像上传文件和发邮件比ASP简单很多,只要调用函数就可以了。ASP还需要用到服务器的不同组件比如FSOJMAIL什么的。4 Z  s  A8 v% w. @" g" g# J
十天学会PHP说到这里了,想告诉大家的是入门可以是十天,但是精通决不是十天啊,还需要大家自己去研究。

返回列表
【捌玖网络】已经运行: