偶前段时间在给自己的主页添加留言本,顺便记下了整个留言本的制作过程,那出来和大家分享。因为偶也是第一次做留言本,也查过很多网上的资料都不太尽人意,都不太详细,想偶这样没有接触过asp,dw的新手很难掌握。我以下的这些文字是针对和我一样的初学者,即便您没有任何的asp编程经验也一样可以作出自己个性的留言本。:) 做出希望大家能喜欢~~这个留言本主要是通过flash(前台)+asp(传递数据)+access(后台数据库)。废话就不多说了,本篇分3部分: flash,DW+asp和access。由于偶也是新手请斑竹Marshadow,龙眼和这里的点星,liji等高手指正。 第一步:flash前台界面的制作 1. 影片的大小,背景颜色都无所谓,看您的喜好. 2. 插入一个新的mc,取名叫做MC_post.建成如下图的样子. 分为3部分:第一部分是输入信息,第二部分传输数据,第三部分返回完成 再做一新 mc,取名叫MC_read.MC_read分为两个部分,第一部分是loading部分,为简单表达意思偶就用了个静态文字意思一下,你完全可以作个动的mc放那. 第二部分是"show"标签部分.
 第二步: access数据库建立 数据库的建立还是比较简单的,使用设计器创建表 字段名称分别是:id,userName,email,comment,date 数据类型分别是:自动编号,文字,文字 文字,日期时间 字段大小按需所设,建好数据库将其放到本机网站跟目录的database下(C:\Intetpub\wwwroot\hxsd\database)
 第三步: DW+asp数据传输部分的制作 1. 定义网站先.按图例一步一步来
 2
 3
 4
 5
 6
 2. 数据库连机设定:按一下数据库面板的+钮在弹出的菜单中可以看到良种联机数据库的方法,我门选择第一种自定义字符串/,在连接字符串中输入如下字符:"DRIVER={Microsoft Access Driver (*.mdb)};DBQ=C:\Inetpub\wwwroot\hxsd\database\read.mdb"然后在下面的选项选择第一项采用测试服务器上的驱动程序,测试服务器 就是指本机服务器. 测试一下成功的话就继续看西面的内容哦
 3. 建立写入数据库的asp网页:选择file > New,从new document对话框中点选动态页面选择ASP VBscript网页。然后点选工具栏上的forms面版 如图所示
 我们的留言本需要3种资料:name,email,comment,因此我门需要3个文字输入方框,(留言日期和编号会自动产生)接下来要做的 就是设定文字输入方框。将鼠标放到刚才做的红色form1表中按一下forms面板上的如图的钮,插入文字输入方框。在下面的属性面板中输入 方框的名称为userName(方框名称最好和数据库中字段名称一样)。同样的方法创建email和comment。作完以后应该是这样的,图如
 ===
 下面我门要做的是 将资料添加到资料表中了。打开应用程序面板,服务器行为中的小加号,从菜单中选择输入记录命令,画面将弹出插入记录面板 ,进行如图的设置
 传统的html网页是通过窗体字段传递给服务器端的处理程序,现在我门是用flash的文字字段和变量内容来取代窗体,因此 在负责读取flash字段和变量资料的asp网页上,不再需要窗体元素和其他html卷表。下面我门就要删除他们。还需要注意的是,在刚才设定 输入资料的行为指令之后,DW会在窗体里面插入一个隐藏字段,如图
 在属性面板字段名称是MM_insert和数值:form1。所以在将来设计flash 的窗体接口时记得在as里添加一个其值为form1的MM_Insert的变量.接下来就真正的要删除所有的html卷表了,除了不删其于的都删 我门的留言本是当窗体资料输入完毕以后 让asp指挥flash切换到另外的关键贞或场景,以实现这种效果。指挥flash切换画面不是真的从asp下命令让flash跳到其他贞,而是从asp传回 一个变量给flash,让flash知道数据已经输入完成。在用gotoAndStop()跳到指定贞 ok原理明白了,具体的操作如下/在原代码倒数第6行,找到 "Response.Redirect(MM_editRedirectUrl)"找到它,该成如图所示的语
 这样的话,当asp网页把窗体资料传入数据库后,就会传回一个done=ok 的变量给flash.当用户留言之后按一下传送钮,按钮里的as程序会一post方式,将文字字段传送给post.asp程序.而且还会切换到sending贞. 让用户知道flash正在传送资料给数据库.回到flash中,进入MC_post编辑状态,点选actions第一贞,输入下面的函数: function sendData() { this.loadVariables ("http://localhost/hxsd/post.asp","post"); gotoAndPlay ("sending"); }
 在send按钮上添加代码:on (release) { sendData(); } sending关键贞上的代码:if (done=="ok") { gotoAndStop("done") } 为了让sending中的if不断的被执行,直到符合条件,可以在它后面添加一个关键贞,并输入下面的语句. gotoAndPlay ("sending"); 接下来我门就要测试接口了,现在我门已经制作完了大半部分的留言本 在flash中ctrl+enter,输入资料,并按传送钮将将他输入数据库/ 然后打开access,read.mdb,就可以看到刚才的输入的留言资料了 我门已经将输入的数据传送到数据库了,那怎么才能让他在flash中显示出来.我们将会用到DW做出显示留言本内容的asp页,再将它 修改成合适的flash 读取形式.留言本的"MC_read"影片片段就是显示留言本内容的. asp网页需要使用"资料集"对象暂存从数据库得到的资料,因此我要先使用DW建立一个资料集.首先将应用程序面板切换到绑定面板,再按+钮 弹出菜单选择记录集(查询)如图
 然后弹出记录集对话框,如图一样的设置
 测试一下,就可以看到我门刚才在flash中输入到数据库 的数据了如图
 确定之后再看看绑定面板如图记录集
 现在我门要做的就是要在asp页上把上面的信息呈现出来. 现在页面上 输入"name :"然后把reGuest资料集里面的userName项目拖放到文字后面,按shift+enter换行.我门继续把另外几个字符串按相同的操作呈现 到页面上,如图所示.最后在来串破折号来分割一条一条的用户留言的记录
 我门现在已经做好了呈现数据内容的asp页面.不过一个页面只 能呈现一条记录.接下来我门要做的就是让他呈现N条记录在一个页面上.首先全部选种页面上所有刚才输入的内容.在选择服务器行为+钮 找到重复区域如图
 在弹出的对话框中输入你想一页显示的记录数按下确定,就会发现在name 上面有"重复"字样如图
 最后按下ctrl+s保存为read.asp寸入和post.asp一样的目录 按下活动数据试图钮,进入数据监视模式,观看asp的实际运行效果,你如果对网页的某些元素的位置不满意可以随便调试位置之到满意.最后别忘记 存盘
 传递给flash的数据必须用变量名=数值配对的格式编排.所以显示资料的语句应该是下面的形式:Response.Write ("logs=留言资料").下面我门 先将html卷标和其中的内容删除.然后在程序中的While指令语句前面假如如图的语句
 接下来将name,email,comment等也用此形式表达出 来. ---------------------------------- 代码一定要保证在同一行 ctrl+s存盘
 接下来将name,email,comment等也用此形式表达出 来. ---------------------------------- 上面的代码一定要保证在同一行 ctrl+s存盘
 现在我门的asp程序已经写的差不多了,回到flash中.进入MC_read影片剪辑.将播放指针放到第5贞.放置一个 关联变量名为logs ,实体名为logs_txt的动态文字字段,以及翻页按钮等元件.然后给MC_read影片剪辑添加程序 onClipEvent (load) { loadData(); function loadData() { this.loadVariables("http://localhost/hxsd/read.asp"); } } onClipEvent (data) { gotoAndStop ("show"); } 这时我们按ctrl+enter就应该可以看到留言的内容了.如图
 还记得上面设置资料集的内容吗?绑定面板除了userName email comment之外还有first record index, last record index, total record index 他们分别表示现在显示的是第几条留言,一共有几条留言.我门马上要做的就是将这些信息传给flash.进入DW原码编辑状态,把文字插入点放到wend (结束循环)之后如图的位置
 将first record index拖到刚才光标的位置,如图
 以前上面的内容也说过传递给flash的资料 必须用变量=数值配对格式编排,所以这里也不例外,在程序代码里面加上"&first="如图
 回到flash,ctrl+enter,是不是已经看到留言数 了呢
 如图
 现在留言本的大体功能都有了,可是它只能显示10页的内容,无法显示更多的,因为还没有翻页按钮呢.我门现在asp页上设定 翻页的连接,回到dw,切换到设计模式,输入">"当作翻页符号如图
 然后选取"然后确定,">>"也是相同的操作. 由于我门输入的是""符号,dw会把他们转换成,因为这两个符号在html的用途是指令的开 始和结尾,我们可以看到Href值这表明将来执行网页时连接地址将变成MM_moveFirst变量的值.接下来我们就要对代码进行 改动.先把前面两个 删除,再将标改成传回prevURL 和nextURL变量设定的字符串,如图
 这样的话asp程序已经大公告成了.回到flash,进入MC_read编辑状态,在actions层第一贞添加添加下面的程序: var myHost = "http://localhost"; function dataLink (URL) { this.loadVariables (myHost + URL); 下面就是给左右按钮添加代码,在第5贞添加如下代码 left_btn.onRelease = function () { dataLink (prevURL) }; right_btn.onRelease = function () { dataLink (nextURL) }; 存盘,看结果 大家可以看上面的guestbook.fla文件 好了,现在整个留言本做好了,如果你觉得颜色不是你想要的也可以通过as来改变,具体参数在上面的guestbook.fla中的代码有详细的解释 最后希望大家都能拥有属于自己的留言本.... |