中文字幕二区_国产精品免费在线观看_黄色网站观看_人人草人人澡_日本真实娇小xxxx

您的位置: 首頁 > 技術(shù)文檔 > 多媒體制作 > flash與ASP通信的幾種方法
Flash Paper使用全功略 回到列表 ShareObject 實現(xiàn)Replay功能
 flash與ASP通信的幾種方法

作者:handmade 時間: 2003-08-09 文檔類型:原創(chuàng) 來自:藍(lán)色理想

第 1 頁 一、使用loadVariables
第 2 頁 二、使用LoadVars
第 3 頁 三、使用xml

Flash中的XML對象也有方法可以將XML數(shù)據(jù)向服務(wù)器發(fā)送。即send和sendAndLoad。send方法向某個 URL 傳遞 XML 對象,返回的信息都被發(fā)送到另外一個瀏覽器窗口;sendAndLoad 方法向某個 URL 發(fā)送一個 XML 對象。返回的信息都放在一個XML對象中。
在某種程度上, XML的send方法和sendAndLoad方法類似于loadVars對象的send方法和sendAndLoad方法。
以login系統(tǒng)為例。首先將Flash中需要傳送的信息(用戶名和密碼)轉(zhuǎn)換成一個 XML 對象,然后將數(shù)據(jù)作為 XML 文檔發(fā)送到服務(wù)器端腳本。在服務(wù)器端我們還是從數(shù)據(jù)庫中提取相應(yīng)的數(shù)據(jù),在服務(wù)器端腳本中對這兩種信息驗證。最后將驗證成功的信息也以XML格式傳送回Flash。圖1顯示了這種結(jié)構(gòu):

首先,看看數(shù)據(jù)庫的結(jié)構(gòu),很簡單,用Access做一個名為login.mdb(存儲到同swf,asp文件同同一目錄下)的數(shù)據(jù)庫文件,然后新建一個名為admin的表,第一個字段名稱是”id”,數(shù)據(jù)類型是自動編號;第二個字段名稱是username,數(shù)據(jù)類型是文本。字段大小改為16;第三個字段名稱為password,數(shù)據(jù)類型是文本,字段大小也改為16。表結(jié)構(gòu)如圖2所示:

接著,我們用Flash做一個登錄界面。為了使得這個界面在其他地方也能用到,可以將所有的元件都集中到一個名為login的MC里面。這個MC的基本結(jié)構(gòu)如下:
bg層:用來放置登錄界面的背景。第二幀加關(guān)鍵幀;
Title層:用來放置標(biāo)題MC,MC名字為title,因為只是一個標(biāo)題,就不列出這個MC的結(jié)構(gòu)了。第二幀加關(guān)鍵幀;
Inputbg層:input文本的背景。
InputTXT層:兩個input文本,第一個的var為name,第二個的var為pass,類型為Password,我們要向服務(wù)器發(fā)送的變量就從這里獲得;
Pushbt層:一個確定按鈕(名字為pushbt),用來發(fā)送一個XML變量,其action如下:
Action for pushbt:
on (release, keyPress "<Enter>") {
//新建一個xml對象,節(jié)點明為LOGIN。在屬性
//中存放用戶名和密碼
loginXML = new XML();
loginElement = loginXML.createElement("LOGIN");
loginElement.attributes.name = this.name;
loginElement.attributes.pass = this.pass;
loginXML.appendChild(loginElement);
//新建一個xml對象,用來存放從服務(wù)器返回的信息
loginReplyXML = new XML();
loginXML.sendAndLoad("http://localhost/chklogin.asp", loginReplyXML);
Msg = "正在等待服務(wù)器驗證";
gotoAndStop(2);
}


這一層有兩幀,第一幀的action為stop();第二幀上的action為
Action for frame2
stop();
function onLoginReply() {
//提取從服務(wù)器返回的數(shù)據(jù)并判斷信息是否正確
var reply = this.firstChild;
if (reply.nodeName == "LOGINREPLY" && reply.attributes.login == "1") {
Msg = reply.attributes.msg;
}
}
//返回服務(wù)器信息
loginReplyXML.onLoad = onLoginReply;

這個MC最后將如圖3所示:

↑ login MC的第一幀

↑ login MC的第二幀

這樣,如果你輸入的name為admin,pass為admin的話,按下確定按鈕,服務(wù)器的chklogin.asp頁面就會接受到以下XML:
<LOGIN pass ="admin" name ="admin" />
在服務(wù)器響應(yīng)并驗證了信息之后,需要發(fā)送回來以下形式的XML:
<LOGINREPLY login=”1” Msg=someMessage />

最后看看asp怎么寫。
chklogin.asp:
<%@ Language="JScript"%>
<%
//創(chuàng)建一個新的DomDocument對象,存入客戶端傳送過來的XML請求
var xmlReceive = new ActiveXObject("Msxml2.DomDocument");
xmlReceive.loadXML(Request.Form());
var reElement = xmlReceive.documentElement;
//提取用戶名和密碼信息
password = reElement.attributes[0].nodeValue;
username = reElement.attributes[1].nodeValue;
//創(chuàng)建并打開一個新連接。
var conn = new ActiveXObject("ADODB.CONNECTION");
strconn = "DBQ="+Server.MapPath("login.mdb")+";DefaultDir=;Driver={Microsoft Access Driver (*.mdb)};";
conn.Open(strconn);
//新建并打開一個查詢
var rs = new ActiveXObject("ADODB.RECORDSET");
sql = "select * from admin where id=1";
rs.open(sql,conn,1,1);
//開始驗證
if (!(rs.BOF && rs.EOF)){
    if (password == rs("password") && username == rs("username")){
        Msg = "恭喜你," + username + "你已經(jīng)成功登陸!";
    }else if(username != rs("username")){
    Msg = "對不起,您填寫的用戶名不正確,請返回重新填寫";
        }else if(password != rs("password")){
        Msg = "對不起,您填寫的密碼不正確,請返回重新填寫";      
}
}else{
Msg = "登陸沒有成功,看上去服務(wù)器出了點問題。"
}
//創(chuàng)建一個新的DomDocument對象,向客戶端發(fā)送
var xmlRepley = new ActiveXObject("Msxml2.DomDocument");
xmlRepley.loadXML("<LOGINREPLY login='1' msg='"+Msg+"' />");
Response.Write(xmlRepley.xml);
%>


我們知道,F(xiàn)lash中xml.sendAndLoad方法是以HTTP的POST方法發(fā)送到服務(wù)器頁面的,因此這個XML數(shù)據(jù)存在于Request對象中。在DOM中可以直接象在第5行中使用的方法那樣以loadXML的方法加載。
雖然可以使用DOM的其他方法來創(chuàng)建xmlRepley 這個XML文檔(例如createNode),但是那樣對初學(xué)者來說是很難控制的。因此簡單的以字串的形式加載到xmlRepley中更為直觀。如果你有了一定的經(jīng)驗后,需要利用ADO從數(shù)據(jù)庫中提取數(shù)據(jù)并封裝為XML文檔,那么就會發(fā)現(xiàn)使用createNode方法會有效率一些。

出處:藍(lán)色理想
責(zé)任編輯:handmade

上一頁 二、使用LoadVars 下一頁

◎進(jìn)入論壇Flash專欄版塊參加討論

相關(guān)文章 更多相關(guān)鏈接
Flash 酷站獵手
中文ID3亂碼問題MX解決方案
用AS2解決中文ID3的亂碼
Flash常用效果-移動模糊效果
Flash MX 2005 制作環(huán)境預(yù)覽
作者文章
flash與ASP通信的幾種方法
關(guān)鍵字搜索 常規(guī)搜索 推薦文檔
熱門搜索:CSS Fireworks 設(shè)計比賽 網(wǎng)頁制作 web標(biāo)準(zhǔn) 用戶體驗 UE photoshop Dreamweaver Studio8 Flash 手繪 CG
站點最新 站點最新列表
周大!熬•自然”設(shè)計大賽開啟
國際體驗設(shè)計大會7月將在京舉行
中國國防科技信息中心標(biāo)志征集
云計算如何讓安全問題可控
云計算是多數(shù)企業(yè)唯一擁抱互聯(lián)網(wǎng)的機會
阿里行云
云手機年終巨獻(xiàn),送禮標(biāo)配299起
阿里巴巴CTO王堅的"云和互聯(lián)網(wǎng)觀"
1499元買真八核 云OS雙蛋大促
首屆COCO桌面手機主題設(shè)計大賽
欄目最新 欄目最新列表
淺談JavaScript編程語言的編碼規(guī)范
如何在illustrator中繪制臺歷
Ps簡單繪制一個可愛的鉛筆圖標(biāo)
數(shù)據(jù)同步算法研究
用ps作簡單的作品展示頁面
CSS定位機制之一:普通流
25個最佳最閃亮的Eclipse開發(fā)項目
Illustrator中制作針線縫制文字效果
Photoshop制作印刷凹凸字體
VS2010中創(chuàng)建自定義SQL Rule
>> 分頁 首頁 前頁 后頁 尾頁 頁次:3/31個記錄/頁 轉(zhuǎn)到 頁 共3個記錄

藍(lán)色理想版權(quán)申明:除部分特別聲明不要轉(zhuǎn)載,或者授權(quán)我站獨家播發(fā)的文章外,大家可以自由轉(zhuǎn)載我站點的原創(chuàng)文章,但原作者和來自我站的鏈接必須保留(非我站原創(chuàng)的,按照原來自一節(jié),自行鏈接)。文章版權(quán)歸我站和作者共有。

轉(zhuǎn)載要求:轉(zhuǎn)載之圖片、文件,鏈接請不要盜鏈到本站,且不準(zhǔn)打上各自站點的水印,亦不能抹去我站點水印。

特別注意:本站所提供的攝影照片,插畫,設(shè)計作品,如需使用,請與原作者聯(lián)系,版權(quán)歸原作者所有,文章若有侵犯作者版權(quán),請與我們聯(lián)系,我們將立即刪除修改。

您的評論
用戶名:  口令:
說明:輸入正確的用戶名和密碼才能參與評論。如果您不是本站會員,你可以注冊 為本站會員。
注意:文章中的鏈接、內(nèi)容等需要修改的錯誤,請用報告錯誤,以利文檔及時修改。
不評分 1 2 3 4 5
注意:請不要在評論中含與內(nèi)容無關(guān)的廣告鏈接,違者封ID
請您注意:
·不良評論請用報告管理員,以利管理員及時刪除。
·尊重網(wǎng)上道德,遵守中華人民共和國的各項有關(guān)法律法規(guī)
·承擔(dān)一切因您的行為而直接或間接導(dǎo)致的民事或刑事法律責(zé)任
·本站評論管理人員有權(quán)保留或刪除其管轄評論中的任意內(nèi)容
·您在本站發(fā)表的作品,本站有權(quán)在網(wǎng)站內(nèi)轉(zhuǎn)載或引用
·參與本評論即表明您已經(jīng)閱讀并接受上述條款
推薦文檔 | 打印文檔 | 評論文檔 | 報告錯誤  
專業(yè)書推薦 更多內(nèi)容
網(wǎng)站可用性測試及優(yōu)化指南
《寫給大家看的色彩書1》
《跟我去香港》
眾妙之門—網(wǎng)站UI 設(shè)計之道
《Flex 4.0 RIA開發(fā)寶典》
《贏在設(shè)計》
犀利開發(fā)—jQuery內(nèi)核詳解與實踐
作品集 更多內(nèi)容

雜⑦雜⑧ Gold NORMANA V2