网站首页站长博客下载中心域名交易站长论坛域名主机免费电邮免费域名中文排行排名查询站长书库书籍教程下载
设为首页
加入收藏
总编信箱
投稿或申请专栏请先 [登 陆]
学院首页 网络编程 网页设计 图形图象 数 据 库 服 务 器 网络媒体 网络安全 个人专栏 站长CLUB 业界新闻 信息公告
 当前位置:首页 >> 网络媒体 >> Flash >> 正文
公告通知
返回上级列表
资料搜索
相关文章
如何使用Flash连接资料库
[ 来源:中国站长学院 | 作者:风未起时 | 时间:2005-5-18 20:57:37 | 浏览:人次 ]
收藏到新浪ViVi 收藏到365KEY 收藏到我摘  字号选择〖    〗/ 双击滚屏 单击停止  
由于最近新手来的多, 所以顺便写了这篇简单的例子... 当中列出Flash如何通过ASP和PHP连接资料库的例子...ASP部分未经测试(因为没安装IIS).. 但我想也差不了多少, 那么开始吧
首先在Flash中建立入下图的物件
按此在新窗口浏览图片
2个输入框(name,msg), 1个动态文本(display)和一个按钮(submit)
例子(一) :    Flash+ASP+Microsoft Access 在Flash第一帧输入:


function loadData() {
   loader = new LoadVars();
   loader.load("server.asp?time="+new Date().getTime());    //向ASP取得资料的连接, 这里我不使用Math.random是因为这样有个缺点
   loader.onLoad = function(success) {
      if (success) {
         display.htmlText = loader.Result;    //loader.Result是ASP传递回来的资料
      }
   };
}
submit.onRelease = function() {       //当按钮按下放开的时候
   if (name.text.length == 0) {    //这里是判断输入框是否为空
      Selection.setFocus(name);       //把光标设定在指定的输入框
   } else if (msg.text.length == 0) {    //同上
      Selection.setFocus(msg);
   } else {
      status.text = "";    //这个动态文本你们可以自己设定
      sender = new LoadVars();
      sender.name = name.text;    //设定需要传递的变量
      sender.msg = msg.text;
      sender.onLoad = function(success) {
         if (success) {
            if (sender.Result == "Success") {       //传递回来的讯息为Success时
               status.text = "记录成功...";
               name.text = msg.text="";       //清空输入栏位
               loadData();       //重新刷新资料
            } else {
               status.text = "记录失败, 请再次尝试...";
            }
            delete sender;    //养成习惯把LoadVars变量删除以释放内存空间
         }
      };
      sender.sendAndLoad("server.asp?action=save", sender, "POST");    //传送出变量并等待资料传回, 传回的资料会在onLoad中截取
   }
};
loadData();    //在一开始载入资料库中的资料
在ASP部分


<%
Set cnnDB = Server.CreateObject("ADODB.Connection")    ''建立ADODB连接
Con = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.MapPath("./Database.mdb")    ''设定与资料库的连接, 资料库名为Database
cnnDB.Open Con    ''进行连接

if Request("action") = "save" then       ''当Flash传递来的action变量为save的时候
          strName = Request("name")       ''取得变量name, 在这里我没有做符号的检查, 你们可以自行编写
          strMsg = Request("msg")
          strSQL = "INSERT INTO guestbook(Name, Message) VALUES (''"&strName&"'', ''"&strMsg&"'')"       ''增加资料库的设定, 资料表名为guestbook, 当中有Name和Message栏位
          cnnDB.Execute strSQL       ''执行增加资料
          Response.Write "&Result=Success"
else
          Set rstObj = Server.CreateObject("ADODB.Recordset")       ''建立Recordset
          strSQL = "SELECT * FROM guestbook"       ''取得资料表中的所有资料
          rstObj.Open strSQL, cnnDB       ''使用Recordset连接资料表

          Do While Not rstObj.EOF       ''检查资料是否为最后一笔, 不是就进行下列指令
                      record = record & rstObj("Name")&" : "&rstObj("Message")&"<br>"       ''使用变量储存每一行的资料
                      rstObj.MoveNext       ''移动到下一笔资料
          Loop

          Response.Write "&Result="&record&"<br><b>Finish</b>"       ''最后把变量传递回Flash

          rstObj.Close       ''结束Recordset连接
          Set rstObj = Nothing    ''把Recordset的指针设定为无
end if

cnnDB.Close       ''结束资料库连接
Set cnnDB = Nothing       ''设定资料库指针为无
%>

********** ASP 连接 MySQL 的方法 ***********


<%
          Dim LE_DSN
          Dim   Conn
          Dim ServerAddress
          Dim DBName
          Dim UID
          Dim Password
         
          ServerAddress = "localhost"    ''服务器的DNS名
          DBName = "Super-Tomato"                ''资料库名字
          UID = ""                                                             ''用户名
          Password = ""                                              ''用户密码
         
          LE_DSN = "driver={MySql};server=" & ServerAddress & ";db=" & DBName & ";user id=" & UID & ";pwd=" & Password & ";option=16386"

          Set   Conn = Server.CreateObject("ADODB.Connection")
          Conn.Open LE_DSN

          Set rstObj = Server.CreateObject("ADODB.Recordset")
                      strSQL = "SELECT * FROM guestbook"
                      rstObj.Open strSQL,Conn

%>


[发送给好友]  [打印本页]  [关闭窗口]  [返回顶部]   转载请注明来源:http://edu.chinaz.com   
特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
栏目编辑: 设计风 责任编辑: 设计风
原始作者: 风未起时 录入时间: 2005-5-18 20:57:37
信息来源: 中国站长学院 投稿信箱: Edu#chinaz.com
设为首页 - 加入收藏 - 关于我们 - 广告服务 - 版权申明 - 友情链接 - 联系方式 - 总编信箱 - 会员投稿