با سلام.
چطوری می تونم یک مقدار رو از صفحه asp به صفحه html ای که به صورت فول فلش است را ارسال کنم؟
کار صفحه html ای که ساختم ارتباط با دیتا بیس برای تایید یوزر وپسورد بوده وصفحه ای اس پی کارش باید ارسال پیغامی متناسب با کاربری که وارد می شود .
باتشکر.
در حقيقت فايل فلش اطلاعات رو از ASP بارگزاري مي كنه ، نه اينكه ASP اطلاعات رو به HTML مي فرسته!
در مثال زير كه دريافت متغير ها رو از ASP توسط فلش شرح مي ده ، از يك بانك اطلاعاتي Access كه داراي يك جدول و 2 ستون هستش استفاده كرديم ؛ ActionScript فلش رو به صورت زير مي نويسيم:
myVars = new LoadVars();
myVars.onLoad = function(success) {
if(success){
anotherVariable = this.user;
someVariable = this.topic;
}
}
myVars.load("farsweb.asp");
و كد ASP كه با توجه به درخواست ، اطلاعات رو از بانك اطلاعاتي استخراج مي كنه:
<%@LANGUAGE="VBSCRIPT"%>
<!-- #include file = "databaseAccess.asp" -->
<%
dim strTopic
dim strUser
strSQL = "SELECT * FROM farsweblist"
set objrec = connectToDatabase (strSQL)
strTopic = objrec("topic")
strUser = objrec("user")
Response.Write "&user="&strUser
Response.Write "&topic="&strTopic
%>
و مثال دوم كه همون مثال بالاست ، منتها اين بار فلش 2 آرايه رو از asp بارگزاري مي كنه:
كد Action Script به صورت زير:
myVars = new LoadVars();
myVars.onLoad = function(success){
if(success){
for(i = 0;i < this.iRecCounter-1;i++){
datopic = "topic" + i; //Temp variable
dauser = "user" + i; //Temp variable
topics[i] = this[datopic];
users[i] = this[dauser];
}
}
}
myVars.load("farsweblist.asp");
و كد asp كه اطلاعات رو از بانك اطلاعاتي دريافت مي كنه:
<%@LANGUAGE="VBSCRIPT"%>
<!-- #include file = "databaseAccess.asp" -->
<%
dim iRecCounter,i
dim strTopic()
dim strUser()
iRecCounter = 0
i=1
reDim Preserve strTopic(i-1)
reDim Preserve strUser(i-1)
strSQL = "SELECT COUNT(*) AS iCount FROM farsweblist"
set objrec = connectToDatabase (strSQL)
if (not (objrec.EOF)) then
iRecCounter = objrec("iCount")
else
iRecCounter = "fail"
end if
strSQL = "SELECT * FROM farsweblist"
set objrec = connectToDatabase (strSQL)
if (not (objrec.EOF)) then
for i=0 to iRecCounter-1
reDim Preserve strTopic(i)
reDim Preserve strUser(i)
strTopic(i) = objrec("topic")
strUser(i) = objrec("user")
objrec.MoveNext
next
end if
for i=0 to iRecCounter-1
Response.Write "&user"&(i)&"="&strUser(i)
Response.Write "&topic"&(i)&"="&strTopic(i)
next
Response.Write "&iRecCounter="&iRecCounter
%>
براي توضيحات بيشتر ، كد databaseAccess.asp هم كه include مي شه به صورت زير هستش:
<%
function connectToDatabase (strSQL)
strConn = "DRIVER={Microsoft Access Driver (*.mdb)}
; DBQ=" & Server.MapPath("labv1.mdb")
'set up database connection
set dataconnection = server.CreateObject
("ADODB.Connection")
'open connection to database
call dataconnection.Open (strConn)
'create a place to store data, ie Recordset object
set objrec = server.CreateObject ("ADODB.Recordset")
'get the topics from the database
call objrec.Open (strSQL,dataConnection)
set connectToDatabase = objrec
end function
%>
موفق باشيد.
در مورد سوال دیروز:
صفحه فلش من اطلاعات را به درستی از صفحه asp بارکرد.و عملیات حذف از بانک را انجام داد ولی مشکل اینجاست که :
باید در قسمت publish نسخه پلیر را به 6 ویا پایین تر تنظیم کرد و با نسخه های بالاتر حذف انجام نمی گیرد.
متشکرم اگر راهنمایی کنید یا در صورت امکان یک نمونه را بگذارید.
اين مشكل در سرور به وجود اومده يا هاست محلي (locahost) ؟
در localhost.
در صفحه فلش هم مقادیر را با دستورloadvariables می گیرم.
xooker عزیز
من دقیقا نمی دونم این مشکل برا چیه ولی ممکنه بخاطر نسخه Flash Player ی باشه که شما استفاده می کنید. ولی من از روش Publish استفاده نکردم و کد جواب داد .
یعنی خود swf را به صورت دستی توی صفحه html قرار دادم، اینطوری شما هم احتمالا به جواب می رسید چون شما هم می خواهید در صفحه html استفاده کنید.
فقط وقتی درست جواب میده که اونو با فلش پلیر 6وقبل ان publish کنم.
شما هم تستش کنید واشکال من را بگید.
با تشکر.
دوستان نمیخوان پاسخ بدهند؟