佳礼资讯网

 找回密码
 注册

ADVERTISEMENT

查看: 1282|回复: 1

[教程]如何使用Flash连接资料库(ASP篇)

[复制链接]
发表于 1-1-2005 11:51 AM | 显示全部楼层 |阅读模式

作者:Super-Tomato

由于最近新手来的多, 所以顺便写了这篇简单的例子... 当中列出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://xenz.flash8.net/tutorial/Flash_ASP.rar
回复

使用道具 举报


ADVERTISEMENT

发表于 1-1-2005 12:08 PM | 显示全部楼层
下载了原文回去研究.....
本来想学3D先的,现在学flash比较多了~QQ
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

 

ADVERTISEMENT



ADVERTISEMENT



ADVERTISEMENT

ADVERTISEMENT


版权所有 © 1996-2023 Cari Internet Sdn Bhd (483575-W)|IPSERVERONE 提供云主机|广告刊登|关于我们|私隐权|免控|投诉|联络|脸书|佳礼资讯网

GMT+8, 14-5-2024 07:21 PM , Processed in 0.058644 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表