实现要点:
- 包含单行多行文本域、单选框、复选框
- 包含日期控件
- 包含图片上传功能
- 包含验证码
- 包含md5加密
- 包含省市联动
- 下载稻香老农的组件,upload_5xsoft.inc,猛击这里
- 我们在上一节的基础上,在register.asp中修改form表单,因为要在表单中上传图片,所以form表单的属性中应该添加一项enctype="multipart/form-data"
<form name="form1" id="form1" method="post" action="regAction.asp" enctype="multipart/form-data" >
- 在表单中,我们添加个人头像这一选项,提供图片上传功能,input框的属性是file
<tr bgcolor="#000000"> <td align="right" bgcolor="#000000" width="150px" style="padding-left: 5px; padding-top: 4px; padding-bottom: 4px; padding-right: 18px;"> 个人头像 : </td> <td align="left" style="padding-left: 5px; padding-top: 4px; padding-bottom: 4px; padding-right: 18px;"> <input name="photoLink" type="file" id="photoLink" /> </td> </tr>
- 现在,当我们点击浏览这个按键时,就会打开浏览的对话框,接下来,我们就要修改RegAction.asp这个文件的内容了。首先引入upload_5xsoft.inc这个文件
<!--#include FILE="upload_5xsoft.inc"-->
- 先要新建一个upload对象,上传图片需要用到组件中的file对象
set upload=new upload_5xsoft '新建一个upload_5xSoft类的对象 set file=upload.File("photoLink") '文件对象集,upload_5xsoft 对象成员,他的对象成员有 'Count 属性,文件表单的个数 'FileName 属性,上传文件的名字 response.write "<br>文件名:"&file.FileName 'FileSize 属性,上传文件的大小(为0是表示没有文件) 'FilePath 属性,上传前文件所在的路径 'FormName 属性,文件表单的名字 'SaveAs 方法,储存上传后文件,有一个参数 file.saveAs Server.mappath("/1.jpg") 'photolink为上传的表单名
- 此时若还用request.form("username")读取form表单中的内容,就会报错,因为该组件不允许使用request对象,这怎么办呢?其实该组件提供了upload.form对象,代替原来的request.form
dim username username = upload.Form("username") '表单对象集,用来代替 Request.Form 'count 属性,表单数 'exists 方法,检查是否有指定的表单名
- 接下来就需要对上传的图片进行判断了,如果filesize>0,就要将其存入指定目录中,并用一个变量记录存储的路径,以备写入数据库
<% if file.FileSize>0 then fn=server.MapPath("upload")&"\"&file.fileName '寻找本路径下的upload文件夹,并将图片存入其下,命名为上传图片本来的filename '1.Server.MapPath("/") 应用程序根目录所在的位置 如 C:\Inetpub\wwwroot\ '2.Server.MapPath("./") 表示所在页面的当前目录 注:等价于Server.MapPath("") 返回 Server.MapPath("")所在页面的物理文件路径 '3.Server.MapPath("../")表示上一级目录 '4.Server.MapPath("~/")表示当前应用级程序的目录,如果是根目录,就是根目录,如果是虚拟目录,就是虚拟目录所在的位置 如:C:\Inetpub\wwwroot\Example\ 注:等效于Server.MapPath("~")。 fnsave = "upload" &"/"&file.fileName '存储至数据库的变量,upload文件夹下的filename,采用相对路径存储 file.saveAs fn 'file.savaAs 后一定是真实路径 set file=nothing end if set upload=nothing %>