农民程序员一周教会你asp第1讲
【编者按:这是我2011年发布在蓝色经典论坛的一套教程,虽然很有指导意义,但是现在玩程序的人很少了。如今过去了七年了,点击率很高却无人回复。不免有些失落。作为本人的一套原创教程,把他转发到这里来留档。】
我是一个农民程序员,什么是农民程序员呢,这是我的一个partner给我起的,为什么叫农民程序员呢,我大学的专业是研究水泥生产线,就是材料类的,工作后先动笔杆子搞宣传,后来又从事行政工作,这都跟程序不沾边,我不懂得什么叫字符串,不懂得什么叫做函数,不懂得MVC,但是,这些都不妨碍我写程序,而且是写优秀的开源程序。就像农民伯伯一样,书本上的道理一窍不通甚至一个字都不认识,但是会种地,会种出丰收的田园。
好了,闲话少说,我们从今天开始,我用一周的时间,给大家讲我怎么学会的asp,怎么用asp写程序,确切的说,是套用程序。只要活学活用,随便改个程序甚至写个程序,都不在话下。学习这个教程的前提是,你会一些基本的html语法,至少是能知道tr和td是怎么循环的表格。
我先谈谈我的理念,我觉得,现在玩asp的站长和爱好者们,都不是说靠程序吃饭的,都是为了爱好,改改程序,为我所用,或者图个乐趣,所以,在程序的规范性和前因后果上,没有必要推理太多,只要能知道就用这行代码解决这个问题,知道这段代码的作用就行了,没有深究每一句作用的必要。当然,我这么说,很多人说我是在误导大家,但是,我的目的就是停留在会用就可以,如果真的想触类旁通的用,游刃有余的玩,那你得进专门的培训机构,那可是要花银子的。我的这个讲座,免费!
好,我们的主要任务:通过写一个最简单的留言本,告诉大家怎么玩asp!然后循序渐进将留言本的大部分功能都增加近来,从而在这份劳动中,体验asp的魅力,学会怎么写asp!
今天的第一件事情,我们要来分析一下一个留言本的机构:
1、显示留言,这里用到数据库的循环读取;
2、发表留言,用到的是数据库的插入
3、编辑留言,用到的是数据库的更新
4、删除留言,用到的是数据库的删除
对于一个数据库来说,就是这四个基本操作而已。
对于怎么搭建iis服务器,怎么安装micorsoft软件,这里不再赘述,不属于我们这几天学习的范围。
好,我们今天首先来构建一个Access数据库
在安装了micorsoft access软件的电脑上,构建一个最基本的数据库。
桌面,右键,新建,office access数据库,命名为shujuku.mdb
新建数据表lyb
新建字段id,addtime,addname,title,content,类型分别如图所示:
Id就是一个唯一索引,用来作为本条记录的唯一编号;addtime是时间日期格式,用来记录留言发布时间;addname是发布人;title是留言标题,字段长度100字节;content是留言内容,要求是备注格式,这个格式是存储正文的格式。
好了,数据库建立完毕,放入iis目录。
要是不会配置iis,可以用简易的webserver服务器,实在不行,买个小空间,把程序放进去测试吧。
我们来建立第一个asp文件,放在根目录下,就命名为index.asp吧,用记事本或者editplus打开。
Asp文件中需要服务器执行的代码,用<%%>包括起来。
首先,要写连接数据库代码,这个代码是一个固定的内容,会用就行了,不要问那么多,要是有精力,可以百度具体内容。这里的DbPath = "shujuku.mdb"'根据你的具体需要修改数据库路径和名称,支持文件夹格式。后面那个中文说明是注视,asp的注释符号是’,只要有了这个符号,他后面的本行语句就不执行了。
-
<%
-
DbPath = "shujuku.mdb"'数据库位置路径名称
-
ConnStr = "Provider = Microsoft.Jet.OLEDB.4.0;Data Source = " & Server.MapPath(DbPath)
-
Set Conn = Server.CreateObject("ADODB.Connection")
-
Conn.open ConnStr
-
%>
下面,我们继续来研究,研究之前,需要给数据库增加一些内容,才能读取数据库的记录。这里我们手动打开micorsoft access数据库,手动添加记录如下。
下面,我们开始书写数据库的循环输出代码
为什么是循环输出呢,因为我们要输出所有的数据库记录,或者说是一组记录,比如第一条到第三条吧。
代码如下,听我细细讲来
-
-
<%
-
Set rs = Server.CreateObject("ADODB.Recordset")
-
Sql="select * from lyb order by id desc"
-
rs.OPEN sql,Conn,0,1
-
if rs.eof and rs.bof then
-
Response.Write"还没有留言"
-
else
-
do while not rs.eof
-
%>
-
序号:<%=rs("id")%>
-
姓名:<%=rs("addname")%>
-
标题:<%=rs("title")%>
-
留言时间:<%=rs("addtime")%>
-
留言内容:<%=rs("content")%>
-
-
<% rs.movenext
-
loop
-
end if
-
rs.close
-
Set rs=Nothing
-
%>
Set rs = Server.CreateObject("ADODB.Recordset")
是打开记录集,具体参考百度,我这里只讲用法。你可以用rs=,也可以用rs1,用abc,用jiluji等等,都是可以随便起名字的。但是一定记住,这里是什么,后面的所有的rs都要改成你使用的那个。比如rs.open,rs.close等等。
第二,Sql="select * from lyb order by id desc"
这是一个sql语句。Sql语句是你需要调用内容的灵魂。你所选取的内容是什么,都是由他决定的。我们来插播一下Sql语句常用的读取语法
1、读取所有记录:select * from 表名字,比如select * from lyb
2、读取所有记录按照id倒叙排列:select * from表名字 order by id desc。Desc是倒叙排列,asc或者默认是顺序排列。
3、有时候,我们会看到select addtime,addname from lyb order by id desc这里只是读取两个字段,用几个读取几个字段,提高效率。
4、在首页的时候,我们一般会显示最新的五条记录,怎么办呢?select top 5 * from lyb order by id desc,用到了top 5
基本的读取语句就解释完毕了。大家可以慢慢摸索。
第三,rs.OPEN sql,Conn,0,1这里是打开记录集
if rs.eof and rs.bof then 如果没有记录,就输出一下提示
Response.Write"还没有留言"
Else 否则,就往下走,进行循环,这里用的是do while 循环
do while not rs.eof
<%=rs("id")%>这就是输出id字段。这里的<%=就是response.write的意思,它等同于<%response.write rs("id")%>
循环完毕往下走
<%
rs.movenext移动到下一条记录
loop循环
end if结束判断
rs.close关了吧
Set rs=Nothing释放rs,这里的rs就是前面你起的名字
%>
好了,到此为止,我们已经可以很轻松的从数据库里取出记录并进行排序显示了。
通过浏览器访问http://localhost看看吧
今天的教程就这么简单,只要大家能够按照这个教程,适当的修改,就会很轻松的读取出你需要的内容。
随着教程附送的例子就是我们刚才建立的数据库,里面增加了一个表,叫做“city”,里面有字段id,chengshi两个字段,留个作业,按照我给的代码,读取出前10条城市数据表中的字段循环,按照id从小到大排序。
本文出自 栋力天空,转载时请注明出处及相应链接。
本文永久链接: http://www.dongsky.cn/show_1589.html
0条评论