现在我们继续前面的内容。
新建动态网页index.asp:先在设计视图里排版好一个留言板的界面,设计好的页面效果图如下: 下面表格规划和显示都很清楚,一目了然,什么排版的我就不说了吧:),这可是基本功啊,如果不行的话可先学好Dreamweaver,再来学ASP哦!稳打稳进,至理名言^_^.如果想偷懒的话,可以直接下载源代码,学习研究ASP代码也可以啊,我不反对哦,至少我也是这么懒的,理解万岁!:)
排好版后再进入代码视图里,在不同的位置插入以下ASP代码:如下图:
在网页代码的最上面第一行,点击用红线圈起来的标志可以插入第一行的代码,并可以浏览到具体文件上,比较方便,注意选择file文件类型的,不是virtual虚拟类型的。这样就插入了conn.asp数据库连接代码页,此代码被包含在当前网页位置中进行正常编译,不用重复写数据库连接代码,它的好处很大哦,使页面结构化,容易修改和维护,如果数据库连接错误,或数据库文件变动,只需更改conn.asp即可,不必要修改每一页的代码。要善于用这个方法啊,会使你的程序简单化,清晰化,这是常用的编程方法。
然后再输入以上第二行到第六行的划红线的代码块,此代码块的意义让我一一讲来:
第三行代码:既然网页和数据库用connection建立连接打开关系了,之后最重要的工作就是读取数据了。建立rs对象变量为recordset对象,这样以后可以用rs对象变量来存取数据库操作。 第四行代码:把从数据表book里查询的结果放到sql变量上。它的意思是把book里所有的数据都取出来,并按id从大到小排序。desc表示从大到小排序,如果不加的话,最新的留言可是在最后面哦,不方便了。 第五行代码:表示用rs对象变量open方法来打开数据表book,取出结果按sql的查询方法。
以上是通用的读取记录的方法,到其它地方都可以举一反三,要熟悉使用!
接着我们要做无留言记录的判断显示代码出来,我们要定位到“暂无留言”这个表格标签代码的开头,加上第29行如下划红线的代码即可,此代码表示判断语句:如果RS记录指针的EOF结尾和BOF开头都为空,就返回真,执行以下标签,即输入暂无留言这个表格,而不输出下面的其它标签了。再定位到“暂无留言”表格标签的结尾,输入以下37、38行划红线的代码完成判断条件,Response.end表示输出结束,不再输出以下的代码。
其次再做如果记录不为空的情况下输入留言的表格出来,分别定位在输出留言表格标签的前面和后面,插入ASP代码块如下图输入:
此代码块的意思为:将RS记录指针指向第一个记录,然后开始判断移动记录时,记录结尾是否为空,如果不为空接着移动指针,把所有数据都读取出来。直到结尾为空时,退出循环。
然后我们做最重要的也是最频繁使用的工作了,就是把数据表里各字段的记录分别读取出来放在表格的不两路位置上,例姓名,QQ,邮箱及留言等。先转换到设计视图和代码视图的环境下,如下图:
我们发现上图多了很多标记,这就是刚才在代码视图中输入的ASP代码,方便我们在设计视图中进行修改,输出预览是不影响排版的。我们把光标定位在姓名旁边的表格里,点击插入栏ASP里的,自动插入代码区里指定位置,比较方便,不容易搞错,如下图:
然后选中姓名旁边的标记,点属性栏里的Edit编辑按钮,输入rs("name")即可。<%= %>表示输出变量值,相当于response.write的简化版。rs是上次已建过的recordset对象,可以直接读取字段里的内容,name是数据表里book里的姓名字段。 同理按以上方法再插入ASP代码留言内容、发表者、发表时间及回复内容在不同位置,分别是: 留言内容:<%=server.htmlencode(rs("content"))%> 发表者:<%= rs("name") %> 发表时间:<%= rs("time") %> 站长回复:<%= rs("repcontent") %> 大家可能发现了,留言内容插入的代码和别的稍微不一样,多了server.htmlencode这个对象,这是为了安全问题设置的,是HTML编码对象,可以使带有HTML标签的文本不被解释为HTML标记,这样可以防止被恶意者来写入特殊执行代码,造成不必要的损失。 这样就写好了,如下图所示:
接着再做OICQ,EMAIL,HOMEPAGE的链接设置,这个和上述不太一样,它不是直接显示出记录即可,而是将鼠标移到QICQ上浮现留言者的QQ号码,点击EMAIL自动给留言者发信,点击HOMEPAGE直接到达留言者的网站。 选中OICQ,加上“#”空链接,同样的也给EMAIL和HOMEPAGE加上“#”空链接。如下图所示:
大家都知道给图片加提示比较简单,直接在ALT里设置文字说明就可以了,但文字却没有ALT,没关系,我们的Dreamweaver早就想到了,很强大哦!在代码区里OICQ的空链接#后,按空格(注意是英文输入法才有效)会出现智能提示参数出来,我们选择“title”,然后接着打上"<%= rs("oicq") %>"即可!如下图所示:
同样的方法给EMAIL和HOMEPAGE加上啊,方法如下图划红线所示:
一切OK了!!!^_^发现设计视图里的OICQ,EMAIL和HOMEPAGE的背景变成了浅蓝色,这说明我们在链接上给它们加了ASP代码,这样不同的提示是否很体贴啊:)
你肯定等不及了,看看效果吧!但还没有记录啊,没有做留言提交页和回复页,删除页,只好暂时在数据库里手动添加记录吧。
出处:
责任编辑:幻想曲
上一页 建立数据库的准备工作 [1] 下一页 建立发表提交留言页 [3]
◎进入论坛网络编程版块参加讨论
|