这篇文章给大家聊聊关于商城网站asp源码分享下载,以及商城网站asp源码分享下载不了对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。
菜鸟学ASP
学习目的:安装调试ASP的环境,并且调试第一个简单的程序。
因为我们学ASP的目的就是想建立一个网站,那么一般习惯是建立的网站内所有文件应该同时放到一个文件夹中(当然这个文件夹中还可以按需要设置子文件夹!),所以在这里我在E盘建立一个myweb的文件夹。
首先来安装Windows2000/XP自带的IIS作为服务器。在这里因为我的机器是XP所以所有截图都是XP下完成的。
控制面板–>>添加或删除程序。
然后是添加删除windows组件-选中IIS组件前面的勾,之后等待安装,这里可以观看本站以前给大家做的视频教程,完成安装后。
之后在控制面板中双击“管理工具”。
然后双击“internet信息服务”,这就是IIS。
选择“默认网站”,然后右键属性或者直接按快捷键
在属性页面内只有三个页面需要修改,先是网站,如果用户有固定IP,可以分配一个IP
接下来在注主目录中选择一个自己硬盘上面的文件夹存放网站(这个目录就是我们上面说的在e盘建立的目录),选中读取、写入
在文档中添加默认的页面,比如打http://www.liexiaow.com猎校网调用了一个默认文档即是你添加的页面。
接下来也是最关键的:
1、在刚才你定义的一个文件夹里面新建一个文件,可以用记事本建立一个文本文件然后把下面的内容复制到记事本中:
<%response.write&34;%>
保存为1.asp文件(注意:.asp不能省略啊,如果省略了你就保存了一个文本文件了)。
最后打开IE,在地址栏内输入:http://127.0.0.1/1.asp(或者http://localhost/1.asp)回车后就可以看到效果了。
最后解释一下代码的含义。
response.write就是显示的意思,前后的<%和%>是asp的标记符号,在这里面的信息都由服务器处理。127.0.0.1是地址,1.asp是文件名。第一天就结束了!
表单元素要放在一个表单域里面,建立一个表单域。然后修改动作里面的文件为要接受这个表单变量的ASP文件。方法有两种,一种是POST,这个方法传送的变量不会在浏览器的地址栏里面显示,可以大批量传送数据;GET则是会在浏览器地址栏里面显示的,等一会举例子。
下面我们看一个表单元素。
文本域,这个是最基本的,传送的是文本信息,一般用户名,密码都要用这个传送,不过要是密码的话要在类型里面选择密码,这样就会以*代替显示出来的字符,文本域的名字很重要,以后会用到这个名字所以一般不用默认的名字。
现在举一个例子:如果文本域的名字是name的话,用来传送网上用户登记的名字,在表单域里面,传送到reg.asp,用POST方法,那么在reg.asp里面这样得到变量<%name=request.form(&34;)%>如果要显示变量再家加一句,response.writename,这样就形成了一个从客户端到浏览器再回到客户端的过程。如果方法用的是GET的话,那么就改为name=request.querystring(&34;)实际上两者可以统一为name=request(&34;)。下面看看按钮,按钮里面无非两种,一种是提交表单的按钮,一种是重新输入的按钮。单选按钮,一个按钮有一个值。在列表里面同样,添加列表选项和值。下面举一个例子,实际上各种表单元素都是差不多的。
下面是具体的代码:(注:把下面代码保存为一个.htm的文件就可以了.我保存的1.htm)
<formname=&34;method=&34;action=&34;>\n姓名:\n<inputtype=&34;name=&34;>//文本域,名字叫name\n<br>\n密码:\n<inputtype=&34;name=&34;>//文本域,用来输入密码,名字叫psw\n<br>\n<br>\n性别:\n<inputtype=&34;name=&34;value=&34;>//单选,名字叫sex,数值是&34;\n男\n<inputtype=&34;name=&34;value=&34;>//单选,名字叫sex,数值是&34;\n女<br>\n<br>\n城市:\n<selectname=&34;>\n<optionvalue=&34;selected>上海</option>//复选,大家自己分析一下\n<optionvalue=&34;>北京</option>\n</select>\n<br>\n<inputtype=&34;name=&34;value=&34;>//提交按钮\n<inputtype=&34;name=&34;value=&34;>\n</form>\n下面是reg.asp的代码,用来显示出刚才受到的信息:\n<%\nname=request.form(&34;)\npsw=request.form(&34;)\nsex=request.form(&34;)\ncity=request.form(&34;)\nresponse.writename\nresponse.writepsw\nresponse.writesex\nresponse.writecity\n%>
打开浏览器在地址栏内输入:http://localhost/1.htm如下图:(呵呵,因为是练习,我没有美化页面啊!)
下面我们要开始学数据库了!只要把表单和数据库相应的字段连接上就可以了。
学会ACCEES数据库的使用。
首先,要安装OFFICE里面的ACCEES(我的演示是OFFICE2003版本),安装过程这里就不说了,安装好以后会,打开Access.按空数据库,新建一个数据库,文件名字可以叫guestbook.mdb。(提示:为了安全期间,文件名复杂一点好,因为ACCESS数据库可以被下载的!!)
使用设计器创建新的表,一个数据库MDB文件里面可以建立多个表。双击“使用设计器创建表”
填写字段名字然后选择字段类型,一条记录可以有很多字段,可以有很多字段类型,字段大小的意思就是这个字段最多可以容纳的字符数,当这个字段没有任何信息是,ACCEES会用默认值代替(没有任何信息不是空的意思),一般必填字段和允许空字符串分别设置为否、是,以防止出错
按照上图分别建立几个字段,在时间中默认值为=now()就是这个字段不需要填写,系统直接以当前时间代替。
所以的字段都建立以后,关闭这个窗口,按提示保存表,输入表的名字guest,最后出现下图的提示,选择是,主键是记录的标识,为了以后简单,大家可以把编号改为ID,还有在ACCEES里面尽量不要用中文表示字段名字
最后,双击打开这个表,观看表里面的记录
握ACCESS数据库的连接和读取记录
首先还打开我们上一节课建立的数据库中的表,随便输入几条记录,如下图:
这节课学习的内容有一点枯燥,但是很重要。在这里不需要知道命令具体的运行情况,外面的很多书籍之所以不适合入门就是因为介绍了太多的理论知识,让初学者一头雾水。
下面开门见山,看两行代码:
<%\nsetconn=server.createobject(&34;)\nconn.open&34;&server.mappath(&34;)\n%>\n第一行定义了一个adodb数据库连接组件,第二行连接了数据库,大家只要修改后面的数据库名字就可以了。是不是很简单?\n下面再看三行:\n<%\nexec=&34;\nsetrs=server.createobject(&34;)\nrs.openexec,conn,1,1\n%>\n这三行加在前面两行的后面,第一句:设置查询数据库的命令,select后面加的是字段,如果都要查询的话就用*,from后面再加上表的名字,我们前面建立的是不是一个gust表阿?第二句:定义一个记录集组件,所有搜索到的记录都放在这里面,第三句是打开这个记录集,exec就是前面定义的查询命令,conn就是前面定义的数据库连接组件,后面参数“1,1”,这是读取,后面讲到修改记录就把参数设置为1,3,好了接下来我们读取记录。\n<tablewidth=&34;border=&34;cellspacing=&34;cellpadding=&34;>\n<%dowhilenotrs.eof%><tr>\n<td><%=rs(&34;)%></td>\n<td><%=rs(&34;)%></td>\n<td><%=rs(&34;)%></td>\n<td><%=rs(&34;)%></td>\n</tr><%\nrs.movenext\nloop\n%>\n</table>\n//下面的三条语句是用于关闭数据库\n\nrs.close\nsetrs=nothing\nconn.close\nsetconn=nothing\n
在一个表格中,我们用4列分别显示了上次建立的表里面的四个字段,用do循环,notrs.eof的意思是条件为没有读到记录集的最后,rs.movenext的意思是显示完一条转到下面一条记录,<%=%>就等于<%response.write%>用于在html代码里面插入asp代码,主要用于显示变量。
把上面三段代码依次复制粘贴到剪贴板中,一定要按顺序复制粘贴啊!,然后保存为duqu.asp就可以了!打开浏览器,在地址栏内输入:http://localhost/duqu.asp.
下面是我机器上面的结果图片。
学会数据库的基本操作–写入记录
数据库的基本操作无非是:查询记录,写入记录,删除记录,修改记录。
今天我们先学习写入记录。先建立一个表单:(把下面文章保存为5.htm)
<formname=&34;method=&34;action=&34;>name<inputtype=&34;name=&34;><br>tel<inputtype=&34;name=&34;><br>message<inputtype=&34;name=&34;value=&34;><br><inputtype=&34;name=&34;value=&34;><inputtype=&34;name=&34;value=&34;></form>
表单提交到exa5.asp,下面是exa5.asp的代码:(把下面代码保存为5.asp)
<%setconn=server.createobject(&34;)conn.open&34;&server.mappath(&34;)name=request.form(&34;)tel=request.form(&34;)message=request.form(&34;)exec=&39;&34;&34;+tel+&39;&34;&34;conn.executeexecconn.closesetconn=nothingresponse.write&34;%>
在这里前面两句我不说了,后面三句我也不说了,前面说过exec里面的是执行的命令,添加记录的比较繁,大家要仔细看。
insertinto后面加的是表的名字,后面的括号里面是需要添加的字段,不用添加的或者字段的内容就是默认值的可以省略。注意,这里的变量一定要和ACCESS里面的字段名对应,否则就会出错。values后面加的是传送过来的变量。exec是一个字符串,&39;&39;代替双引号,放在双引号里面,连接两个变量用+或者&所以&39;,&39;&39;&34;aaa&34;bbb&34;insertintoguest(name,tel,message)values(&39;,111,&39;)&34;adodb.connection&34;driver={microsoftaccessdriver(*.mdb)};dbq=&34;data/guestbook.mdb&34;select*fromguest&34;adodb.recordset&34;aaa&34;select*fromguestbookwherename=&34;+a+&39;andtel=&34;form1&34;post&34;exam6.asp&34;text&34;name&34;text&34;tel&34;submit&34;Submit&34;提交&34;reset&34;Submit2&34;重置&34;name&34;tel&34;adodb.connection&34;driver={microsoftaccessdriver(*.mdb)};dbq=&34;data/guestbook.mdb&34;select*fromguestwherename=&34;+name+&39;andtel=&34;adodb.recordset&34;Content-Type&34;text/html;charset=gb2312&34;34;text=&000000&34;100%&34;0&34;0&34;0&34;name&34;tel&34;message&34;time&34;delete*fromguestwhereid=&34;id&34;delete*fromguestbookwhere编号=&34;id&34;form1&34;post&34;exam7.asp&34;text&34;id&34;submit&34;Submit&34;提交&34;adodb.connection&34;driver={microsoftaccessdriver(*.mdb)};dbq=&34;data/guestbook.mdb&34;select*fromguest&34;adodb.recordset&34;Content-Type&34;text/html;charset=gb2312&34;34;text=&000000&34;100%&34;0&34;0&34;0&34;id&34;name&34;tel&34;message&34;time&34;adodb.connection&34;driver={microsoftaccessdriver(*.mdb)};dbq=&34;data/guestbook.mdb&34;select*fromguestwhereid=&34;id&34;adodb.recordset&34;form1&34;post&34;modifysave.asp&34;748&34;0&34;0&34;0&34;text&34;name&34;<%=rs(&34;)%>&34;text&34;tel&34;<%=rs(&34;)%>&34;text&34;message&34;<%=rs(&34;)%>&34;submit&34;Submit&34;提交&34;hidden&34;id&34;<%=request.form(&34;)%>&34;form1&34;post&34;exam8.asp&34;text&34;id&34;submit&34;submit&34;提交&34;adodb.connection&34;driver={microsoftaccessdriver(*.mdb)};dbq=&34;data/guestbook.mdb&34;select*fromguestwhereid=&34;id&34;adodb.recordset&34;name&34;name&34;tel&34;tel&34;message&34;message&34;aa&34;aa&34;login&34;yes&34;yes&34;isadmin&34;elsesession(&34;)=&34;endif
在每一个需要管理员才能看的页面最前面加上:
<%ifnotsession(&34;)=&34;thenresponse.redirect&34;%>
这样一般用户就无法打开这个页面。解释一下response.redirect,它是转向的意思,后面的&34;就是转向的文件。这样没有登陆的管理员是无法看到后面的内容的。
response组件基本就是用到response.write(),response.redirect()分别是写字符串和转向的作用。
request基本就是request.form(),request.querystring()分别是接受post,get方法传来的信息。
最后我们一起来制作一个简单的后台登陆管理界面,首先在myweb目录下建立一个admin文件夹,然后我们建立一个数据库名字为admin.mdb,然后我们再建立一个表,表中设置两个字段name,password,类型都是文本型的!最后退出时设置主键,保存为表名check。然后可以输入一条记录用户名:admin,密码:admin。具体建立数据库的方法请看《菜鸟十天学会ASP教程之第三天:数据库的建立》
下面我们开始编写ASP程序,首先建立一个index.asp(管理主界面)程序,代码如下:
<%@language=vbscript%>\n<%ifnotsession(&34;)=&34;then\nresponse.Redirect&34;\nelse\n%>\n<html>\n<head>\n<title>管理界面</title>\n<metahttp-equiv=&34;content=&34;>\n</head>\n<framesetcols=&34;frameborder=&34;border=&34;framespacing=&34;rows=&34;bordercolor=&666666&34;leftFrame&34;auto&34;left.asp&34;mainFrame&34;right.asp&34;34;text=&000000&34;Content-Type&34;text/html;charset=gb2312&34;text/css&34;宋体&FFFFFF}\n.font{font-family:&34;;font-size:10pt;font-weight:normal;color:666666black;border-style:solid;border-top-width:1pt;border-right-width:0px;border-bottom-width:1pt;border-left-width:0px}\n.text{border:1pt34;34;topmargin=&34;bgcolor=&FFFFFF&34;100%&34;0&34;0&34;0&34;center&34;100%&34;129&34;top&34;3&34;230&34;170&34;top&34;top&34;277&34;100%&34;0&34;1&34;0&34;100%&34;34;align=&34;>\n<tr>\n<tdalign=&34;valign=&34;height=&34;>\n<formname=&34;method=&34;action=&34;>\n<tablewidth=&34;border=&34;cellspacing=&34;cellpadding=&34;height=&34;>\n<trbgcolor=&62892C&34;31&34;topic&34;2&34;center&34;34;colspan=&34;class=&34;>\n<divalign=&34;><spanclass=&34;>管理员:</span>\n<inputtype=&34;name=&34;class=&34;size=&34;onMouseOver=&34;>\n<br>\n<spanclass=&34;>密码:</span>\n<inputtype=&34;name=&34;class=&34;size=&34;onMouseOver=&34;><%ifsession(&34;)=&34;thenresponse.Write&39;font&34;endif%>\n</div>\n</td>\n\n</tr>\n<tr>\n<tdbgcolor=&87bc3c&34;52%&34;center&34;font&34;reset&34;Submit2&34;重置&34;text&34;34;width=&34;>\n<divalign=&34;class=&34;>\n<inputtype=&34;name=&34;value=&34;class=&34;>\n</div>\n</td>\n</tr>\n</table></form>\n</td>\n</tr>\n</table>\n</td>\n<tdwidth=&34;valign=&34;></td>\n</tr>\n<tr>\n<tdheight=&34;valign=&34;colspan=&34;></td>\n</tr>\n</table>\n</body>\n</html>\n在上面的程序中用到一个检查用户和密码是否正确的程序check.asp://核对输入的用户和密码是否正确\n<%\ndimname,password\nname=request.form(&34;)\npassword=request.form(&34;)\ndimexec,conn,rs\nexec=&39;&34;&39;&34;&34;\nsetconn=server.createobject(&34;)\nconn.open&34;&server.mappath(&34;)\nsetrs=server.createobject(&34;)\nrs.openexec,conn\nifnotrs.eofthen\nrs.Close\nconn.Close\nsession(&34;)=&34;\nsession(&34;)=&34;\nresponse.Redirect&34;\nelse\nsession(&34;)=&34;\nsession(&34;)=&34;\nresponse.Redirect&34;\nendif\n%>\nleft.asp://管理导航\n<%@language=vbscript%>\n<%ifnotsession(&34;)=&34;then\nresponse.Redirect&34;\nelse\n%>\n<html>\n<head>\n<title>管理界面</title>\n<metahttp-equiv=&34;content=&34;>\n</head>\n<bodytext=&000000&34;0&34;34;leftmargin=&34;>\n<divalign=&34;><ahref=&34;target=&34;><br>\n<br>\n管理界面首页</a><ahref=&34;target=&34;>退出</a><br>\n<br>\n</div>\n</body>\n</html>\n<%endif%>\nexit.asp://退出系统\n<%@language=vbscript%>\n<%\nsession(&34;)=&34;\nsession(&34;)=&34;\nresponse.redirect&34;\n%>\nright.asp://具体管理的内容\n<%@language=vbscript%>\n<%ifnotsession(&34;)=&34;then\nresponse.Redirect&34;\nelse\n%>\n<html>\n<title>管理界面</title>\n<metahttp-equiv=&34;content=&34;>\n</head>\n<bodybgcolor=&ffffff&34;34;topmargin=&34;class=&34;>\n这里是网页教学网的管理系统示例!请大家多研究使用!\n\n</body>\n</html>\n<%endif%>
运行时首先运行index.asp程序,运行效果部分截图如下:
分页技术
今天最后一天我们学习一下ASP里面稍微难一点地分页技术,毕竟当我们有N条记录的时候我们不可能把所有记录显示在一个页面里面吧。
<%\nexec=&34;\nsetrs=server.createobject(&34;)\nrs.openexec,conn,1,1\nrs.PageSize=3\npagecount=rs.PageCount\npage=int(request.QueryString(&34;))\nifpage<=0thenpage=1\nifrequest.QueryString(&34;)=&34;thenpage=1\nrs.AbsolutePage=page\n%>
rs.pagesize设置一个页面里面显示的记录数,pagecount是我们自己定义的一个变量,rs.pagecount是记录的个数,page也是我们自己定义的一个变量,我们下一页的链接可以设置为list.asp?page=<%=page+1%>,下一页的链接可以设置为list.asp?page=<%=page-1%>,这样当按下链接的时候调用页面自己,page这个变量就+1或者-1了,最后我们让rs.absolutepage(当前页面)为第page页就可以了。
ifrequest.QueryString(&34;)=&34;thenpage=1,这句话的作用就是我们打开list.asp的时候没有跟随page变量,自动设置为page=1,防止出错,还有当我们if….then…放在一行的时候endif可以省略。是不是分页也不难?
下面说一种特殊情况:
ifpage=1andnotpage=pagecount,这个时候没有上一页,但是有下一页
elseifpage=pagecountandnotpage=1,这个时候没有下一页,但是有上一页
elseifpage<1,这个时候没有任何记录
elseifpage>pagecountthen,这个时候没有任何记录
elseifpage=1andpage=pagecount,这个时候没有上一页,没有下一页
else,这个时候有上一页,也有下一页。
下面看一段显示1到n页,且每一个数字点击以后就出现这个数在代表的页面的代码,很常见哦。
<%fori=1topagecount%><ahref=&34;><%=i%></a><%next%>
for….next是循环从i=1开始,循环一次加1到pagecount为止。
最后我的实例里面包含了一个最简单的ASP程序,但是功能样样有,是ASP的精髓,每一个ASP大型程序都包含了它。
add.htm增加记录页面
add.asp增加记录操作
conn.asp数据库链接
del.asp删除记录操作
modify.asp修改记录页面
modifysave.asp修改记录操作
list.asp这个是这个程序的核心,通过这个页面实现记录的添加、修改、删除。
OK,本文到此结束,希望对大家有所帮助。
