PDA

View Full Version : قرار دادن تگ form در صفحه ای که مسترپیج داره



bahar_engineer
شنبه 30 آبان 1388, 17:36 عصر
من یه صفحه دارم که اطلاعات کد فروشنده و مبلغ نهایی و کد خرید و ... رو از طریق اون بوسیله متد post برای بانک ارسال می کنم

خوب این صفحه حتما باید تگ form داشته باشه تا بتونم متد post رو بکار ببرم

اما من می خوام این صفحه هم شبیه به صفحات دیگه سایتم از مسترپیج استفاده کنه

و خطا می ده که نمیشه در یک صفحه 2 تا تگ فرم وجود داشته باشه و این به این علته که مسترپیج خودش یک تگ فرم داره و دیگه نمی شه توی contentplaceholder تگ فرم اضافه کرد

اگه هم بخوام تگ فرم مسترپیج و حذف کنم که کلی خطا می گیره ... اگه هم از توی مسترپیج post کنم که اصلا نمی شه

به نظر شما چکارش کنم؟؟

Aidin
شنبه 30 آبان 1388, 19:56 عصر
نیازی به قرار دادن form در صفحه نیست .
در حالت عادی همه اطلاعات موجود در صفحه به همون صفحه Post Back میشه.

bahar_engineer
یک شنبه 01 آذر 1388, 09:48 صبح
نیازی به قرار دادن form در صفحه نیست .
در حالت عادی همه اطلاعات موجود در صفحه به همون صفحه Post Back میشه.

یعنی چی ؟ پس متد post چی می شه ؟ اونو کجا بذارم ؟ منظورتون اینه که فقط مقادیر رو ارسال کنم؟ دیگه به post نیازی نیست؟

Aidin
یک شنبه 01 آذر 1388, 10:08 صبح
وقتی از یک Content Page استفاده میکنی ، خصوصیات موجود در Master Page رو هم شامل میشه ، از جمله Form .

bahar_engineer
یک شنبه 01 آذر 1388, 10:44 صبح
خوب این action رو کجا بذارم ؟ از redirect توی code که نمی شه استفاده کرد خطا می ده که با get امکان ارسال نیست



action="https://acquirer.sb24.com/CardServices/controller"

Aidin
یک شنبه 01 آذر 1388, 10:50 صبح
هنوز درگیر بانکی ؟ :لبخندساده:

مگه وب سرویس مشکلت رو حل نکرد ؟

bahar_engineer
یک شنبه 01 آذر 1388, 10:57 صبح
هنوز درگیر بانکی ؟ :لبخندساده:

مگه وب سرویس مشکلت رو حل نکرد ؟

هنوز سوال نکردم ببینم ip سایت رو بانک ثبت کرده یا نه ... اما فکر می کنم همه کارهاشو انجام دادن که بهشون merchant id دادن دیگه...

جواب سوالم رو ندادین ... این action رو کجا بذارم .؟ همینطوری که توی صفحه form رو پاک کردم اما metod , action رو نه ... اما به سایت بانک وصل نمی شه ... یعنی اکشن عمل نمی کنه . چطوری بهش بگم بره به سایت بانک؟

bahar_engineer
یک شنبه 01 آذر 1388, 11:06 صبح
یه دکمه گذاشتم و آدرس رو توی Postbackurl دادم ... :بامزه:

Aidin
یک شنبه 01 آذر 1388, 11:08 صبح
میتونی از این کلاس برای Post کردن به URL مورد نظرت به همراه اطلاعات دلخواه استفاده کنی :


public class RemotePost
{
private System.Collections.Specialized.NameValueCollection Inputs = new System.Collections.Specialized.NameValueCollection ();
public string Url = "";
public string Method = "post";
public string FormName = "form1";
public void Add(string name,string value)
{
Inputs.Add(name,value);
}
public void Post()
{
System.Web.HttpContext.Current.Response.Clear();
System.Web.HttpContext.Current.Response.Write("");
System.Web.HttpContext.Current.Response.Write(stri ng.Format("",FormName));
System.Web.HttpContext.Current.Response.Write(stri ng.Format("",FormName,Method,Url))
for(int i=0;i< Inputs.Keys.Count;i++)
{
System.Web.HttpContext.Current.Response.Write(stri ng.Format("",Inputs.Keys[i],Inputs[Inputs.Keys[i]]));
}
System.Web.HttpContext.Current.Response.Write("");
System.Web.HttpContext.Current.Response.Write("");
System.Web.HttpContext.Current.Response.End();
}
}

bahar_engineer
یک شنبه 01 آذر 1388, 11:14 صبح
میتونی از این کلاس برای Post کردن به URL مورد نظرت به همراه اطلاعات دلخواه استفاده کنی :


public class RemotePost
{
private System.Collections.Specialized.NameValueCollection Inputs = new System.Collections.Specialized.NameValueCollection ();
public string Url = "";
public string Method = "post";
public string FormName = "form1";
public void Add(string name,string value)
{
Inputs.Add(name,value);
}
public void Post()
{
System.Web.HttpContext.Current.Response.Clear();
System.Web.HttpContext.Current.Response.Write("");
System.Web.HttpContext.Current.Response.Write(stri ng.Format("",FormName));
System.Web.HttpContext.Current.Response.Write(stri ng.Format("",FormName,Method,Url))
for(int i=0;i< Inputs.Keys.Count;i++)
{
System.Web.HttpContext.Current.Response.Write(stri ng.Format("",Inputs.Keys[i],Inputs[Inputs.Keys[i]]));
}
System.Web.HttpContext.Current.Response.Write("");
System.Web.HttpContext.Current.Response.Write("");
System.Web.HttpContext.Current.Response.End();
}
}


مرسی به همون روش که گفتم حل شد ... یه دکمه و خاصیت postbackurl