ورود

View Full Version : سوال: چطور بعد از اجرای url در سمت کلاینت به سمت سرور برگردم؟



bamzi software
دوشنبه 21 تیر 1389, 14:16 عصر
سلام دوستان
خسته نباشید

من می خوام یک سری ایمیل رو دونه دونه در یک قسمت از url قرار بدم و لینک رو اجرا کنم. حالا یه مشکلی دارم:


Dim mail
Dim E_m

Set mail = DBConnection1.Execute("select ...........from ....... where...........")

While NOT mail.EOF

E_m=mail("Email")
response.Redirect("http://.....................&email="&E_m&"..............................")

Wend

mail.Close
Set mail= Nothing

وقتی این ایمیل ها در حلقه قرار دارند و برای اولین بار دستور response.redirect اجرا میشه دیگه به سمت سرور برنمیگرده و بقیه کدها اجرا نمیشه!!

آیا دستور دیگه ای برای اینکار وجود داره که بعد از رفتن به سمت کلاینت دوباره به سمت سرور برگرده ؟

kashaneh
سه شنبه 22 تیر 1389, 08:30 صبح
دوست عزیز به لینک زیر مراجعه کنید و در مورد کارآیی Server.Execute در asp اطلاعاتی کسب کنید :

http://www.w3schools.com/asp/met_execute.asp

موفق باشی

bamzi software
سه شنبه 22 تیر 1389, 11:45 صبح
یک صفحه asp به نام IN_G_Group ساختم و کد قبلیم رو تغییر دادم:


Dim mail
Dim E_m

Set mail = DBConnection1.Execute("select ... from...where ...")

While NOT mail.EOF

E_m=mail("Email")

Server.Execute("IN_G_Group.asp")

Wend

mail.Close
Set mail= Nothing
و در رویداد Page_BeforeShow صفحه IN_G_Group کد زیر رو قرار دادم:


response.Redirect("http://groups.google.com/group/4xct/boxsubscribe?p=ConfirmExplanation&email="&E_m&"&_referer=http%3A%2F%2Fwww.4xct.com%2Fss_u_page.asp %3FpageId%3D3203%26loc%3Dfa")اما این خطا رو میده:


Error Type:
Template engine (0x800A041A)
Template engine: LoadTemplate failed. File c:\inetpub\wwwroot\Report_4x\rIN_G_Group.html not found.
/Report_4x/Template.asp, line 89

مشکل چیه؟

bamzi software
سه شنبه 22 تیر 1389, 17:59 عصر
کسی نمیدونه مشکل از کجاست؟

من که هر چی Search میکنم به نتیجه ای نمیرسم.

درسته که یه صفحه دیگه ساختم و response.redirect رو همراه با متغیری که در صفحه اول ساخته بودم(E_M)، اونجا نوشتم؟

مسیر server,execute چطور؟درسته که اسم صفحه ای که ساختم رو نوشتم؟

چرا در خطا ای که داده به جای اسم صفحه(IN_G_Group.asp) ،نوشته: rIN_G_Group.html ؟

زودتر کمکم کنید ممنون میشم..

فؤاد
شنبه 02 مرداد 1389, 06:00 صبح
سلام

از رویدادی که نام بردی که من تنها متعجب شدم !!!

اگه درست متوجه سوالت شده باشم، فکر کنم باید اینطور اصلاح کنی !

Server.Execute("IN_G_Group.asp?Email=" & em)


ولی من جای شما بودم یه تابع برای ارسال ایمیل درست میکردم و به اون تابع ایمیل رو میفرستادم تا ایمیل رو ارسال کنه اگه هم که از دیتابیس میخونی، تابع رو توی حلقه به تعداد رکوردهای مورد نظر قرار بده

bamzi software
یک شنبه 17 مرداد 1389, 23:47 عصر
کد رو اینطوری که گفتید نوشتم:

Server.Execute("IN_G_Group.asp?Email="&E_m)

اما حالا این خطا رو داد:


Error Type:
Server object, ASP 0231 (0x80004005)
Invalid URL form or fully-qualified absolute URL was used. Use relative URLs.
/Report_4x/reg_G_Group_events.asp, line 30

bamzi software
چهارشنبه 20 مرداد 1389, 16:14 عصر
کمک لطفا............

اصلا نوشتن اسم صفحه در server.execute درست هست?

و اینکه در صفحه ای که در server.execute صدا زده میشه قبل از لود شدنش url مورد نظرم رو در response.redirect نوشتم؟اینا درسته؟

من که فکر نمیکنم درست باشه!!!

من که با Search نتونستم به نتیجه ای برسم!!!

bamzi software
سه شنبه 09 شهریور 1389, 11:06 صبح
کسی چیزی در این مورد نمیدونه؟!!!!

bamzi software
چهارشنبه 31 شهریور 1389, 10:52 صبح
اینطور که متوجه شدم(با راهنمایی دوستان) با ای اس پی کلاسیک امکان نوشتن این کد نبود.
به همین خاطر با ای اس پی دات نت در ویژوال استودیو برنامه رو نوشتم، اما هنوز مشکلات دارم:

با server.execute که نوشتم با خطای زیر مواجه شدم:

string cs;
cs = @"Data Source=(local);Initial Catalog=----;User ID=----;Password=----";


string SQLSELECT = "SELECT [email] FROM [UserTest];";

string URL = "http://groups.google.com/group/4xct/boxsubscribe?p=ConfirmExplanation&email={0}&_refer er=http%3A%2F%2Fwww.4xct.com%2Fss_u_page.asp%3Fpag eId%3D3203%26loc%3Dfa";

using (System.Data.SqlClient.SqlConnection dbCon = new System.Data.SqlClient.SqlConnection(cs))

{
using (System.Data.SqlClient.SqlCommand dbCom = new System.Data.SqlClient.SqlCommand(SQLSELECT, dbCon))
{
using (System.IO.StringWriter html = new System.IO.StringWriter())
{

dbCon.Open();

using (System.Data.SqlClient.SqlDataReader dbDr = dbCom.ExecuteReader())
{


while ((dbDr.Read()))
{
this.Server.Execute(string.Format(URL, dbDr["email"]), html);

}

}
}
}
}
خطا روی خط قرمز:

Invalid path for child request 'http://groups.google.com/group/4xct/boxsubscribe'. A virtual path is expected.


بعد با downloaddata نوشتم:

string cs;
cs = @"Data Source=(local);Initial Catalog=----;User ID=---;Password=----";


string SQLSELECT = "SELECT [email] FROM [UserTest];";

string URL = "http://groups.google.com/group/4xct/boxsubscribe?p=ConfirmExplanation&email={0}&_refer er=http%3A%2F%2Fwww.4xct.com%2Fss_u_page.asp%3Fpag eId%3D3203%26loc%3Dfa";

System.Net.WebClient wc = new System.Net.WebClient();

using (System.Data.SqlClient.SqlConnection dbCon = new System.Data.SqlClient.SqlConnection(cs))
{
using (System.Data.SqlClient.SqlCommand dbCom = new System.Data.SqlClient.SqlCommand(SQLSELECT, dbCon))
{

dbCon.Open();

using (System.Data.SqlClient.SqlDataReader dbDr = dbCom.ExecuteReader())
{


while ((dbDr.Read()))
{
wc.DownloadData(string.Format(URL, dbDr["email"]));

}

}

}
}
اما مشكل حالا اين بود كه فقط آخرين ايميل در url قرار ميگرفت و enter ميشد!!!



يعني در دستور "SELECT [email] FROM [UserTest];" فقط آخرين ايميل select شده در ul وارد ميشد !!

چرا در حلقه اينطور عمل ميكرد؟