22-04-13, 04:53 PM
كنت اود إنشاء حساب تجريبي على موقع باي بال، ولكني وجدت تغييرات في الموقع ولم استطع التعامل معه، للأسف!
عموما، الكود التالي في زر شراء، يقوم بالبيع الفعلي للبرامج:
نضيف صفحة جديدة للمشروع اسمها Payment، نضع عليها الأدوات التالية:
في حدث التحميل للصفحة نكتب:
في حدث ضغط زر حفظ:
نضيف صفحة المواقع المفيدة Websites، ونجعلها كما يلي:
وفي حدث تحميل الصفحة نكتب:
عموما، الكود التالي في زر شراء، يقوم بالبيع الفعلي للبرامج:
:#C
كود :
[align=left]if (Session.Count == 0) return;
try
{
List<int> prog = new List<int>();
foreach (var p in Session) prog.Add(Convert.ToInt32(p));
DB.ProgramsDB db = new DB.ProgramsDB();
var amount = from d in db.Programs
where prog.Contains(d.ID)
select d.Price;
decimal am = 0;
foreach (var d in amount) am += d;
string ppurl = "https://www.paypal.com/cgi-bin/webscr?cmd=_xclick&business=";
ppurl += "dreamsdotnet@hotmail.com"; // ضع الايميل المسجل لدى الموقع، سوف يتم تحول الاموال اليه بعد الشراء
ppurl += "&first_name=Rabee";
ppurl += "&city=Jarash";
ppurl += "&state=Jordan";
ppurl += "&item_name=VB4Arb Programs";
ppurl += "&amount=" + am.ToString("00.00");
ppurl += "&shipping=0";
ppurl += "&handling=0";
ppurl += "&tax=0";
ppurl += "&quantity=1";
ppurl += "¤cy=USD";
ppurl += "&return=http://localhost:55611/payment.aspx";
ppurl += "&cancel_return=http://localhost:55611/";
Response.Redirect(ppurl);
}
catch { }
[/align]
:VB
كود :
[align=left]If Session.Count = 0 Then Exit Sub
Try
Dim prog As New List(Of Integer)()
For Each p In Session
prog.Add(Convert.ToInt32(p))
Next p
Dim db As New DB.ProgramsDB()
Dim amount = From d In db.Programs
Where prog.Contains(d.ID)
Select d.Price
Dim am As Decimal = 0
For Each d In amount
am += d
Next d
Dim ppurl As String = "https://www.paypal.com/cgi-bin/webscr?cmd=_xclick&business="
ppurl &= "dreamsdotnet@hotmail.com" ' ضع الايميل المسجل لدى الموقع، سوف يتم تحول الاموال اليه بعد الشراء
ppurl &= "&first_name=Rabee"
ppurl &= "&city=Jarash"
ppurl &= "&state=Jordan"
ppurl &= "&item_name=VB4Arb Programs"
ppurl &= "&amount=" & am.ToString("00.00")
ppurl &= "&shipping=0"
ppurl &= "&handling=0"
ppurl &= "&tax=0"
ppurl &= "&quantity=1"
ppurl &= "¤cy=USD"
ppurl &= "&return=http://localhost:55611/payment.aspx"
ppurl &= "&cancel_return=http://localhost:55611/"
Response.Redirect(ppurl)
Catch
End Try[/align]
نضيف صفحة جديدة للمشروع اسمها Payment، نضع عليها الأدوات التالية:
في حدث التحميل للصفحة نكتب:
:#C
كود :
[align=left]if (Request.UrlReferrer == null) { Response.Redirect("~/default.aspx"); return; }
if (!Request.UrlReferrer.ToString().Contains("paypal") || Session.Count == 0) Response.Redirect("~/default.aspx");[/align]
:VB
كود :
[align=left]If Request.UrlReferrer Is Nothing Then
Response.Redirect("~/default.aspx")
Exit Sub
End If
If (Not Request.UrlReferrer.ToString().Contains("paypal")) OrElse Session.Count = 0 Then
Response.Redirect("~/default.aspx")
End If[/align]
في حدث ضغط زر حفظ:
:#C
كود :
[align=left]try
{
List<int> prog = new List<int>();
foreach (var p in Session) prog.Add(Convert.ToInt32(p));
DB.ProgramsDB db = new DB.ProgramsDB();
var data = from d in db.Programs
where prog.Contains(d.ID)
select d;
decimal am = 0;
foreach (var p in data) am += p.Price;
DB.Order order = new DB.Order();
order.Name = nbox.Text.Trim();
order.EMail = mbox.Text.Trim();
order.Payment = am;
order.Accept = false;
db.Orders.InsertOnSubmit(order);
db.SubmitChanges();
foreach (var p in data)
{
DB.Detail details = new DB.Detail();
details.OID = order.ID;
details.PID = p.ID;
details.PPrice = p.Price;
db.Details.InsertOnSubmit(details);
}
db.SubmitChanges();
MultiView1.ActiveViewIndex = 1;
}
catch { err.Text = "حصل خطأ!<br />يرجى إعادة المحاولة، إذا تكرر الخطأ قم بمراسلتنا...."; }[/align]
:VB
كود :
[align=left]Try
Dim prog As New List(Of Integer)()
For Each p In Session
prog.Add(Convert.ToInt32(p))
Next p
Dim db As New DB.ProgramsDB()
Dim data = From d In db.Programs
Where prog.Contains(d.ID)
Select d
Dim am As Decimal = 0
For Each p In data
am += p.Price
Next p
Dim order As New DB.Order()
order.Name = nbox.Text.Trim()
order.EMail = mbox.Text.Trim()
order.Payment = am
order.Accept = False
db.Orders.InsertOnSubmit(order)
db.SubmitChanges()
For Each p In data
Dim details As New DB.Detail()
details.OID = order.ID
details.PID = p.ID
details.PPrice = p.Price
db.Details.InsertOnSubmit(details)
Next p
db.SubmitChanges()
MultiView1.ActiveViewIndex = 1
Catch
err.Text = "حصل خطأ!<br />يرجى إعادة المحاولة، إذا تكرر الخطأ قم بمراسلتنا...."
End Try[/align]
نضيف صفحة المواقع المفيدة Websites، ونجعلها كما يلي:
وفي حدث تحميل الصفحة نكتب:
:#C
كود :
[align=left]if (IsPostBack) return;
try
{
DB.ProgramsDB db = new DB.ProgramsDB();
var data = from d in db.Websites select d;
foreach (var d in data) viewer.Text += string.Format("<a href=\"{0}\">{1}</a><br />", d.URL, d.Title);
}
catch { }[/align]
:VB
كود :
[align=left]If IsPostBack Then Exit Sub
Try
Dim db As New DB.ProgramsDB()
Dim data = From d In db.Websites
Select d
For Each d In data
viewer.Text += String.Format("<a href=""{0}"">{1}</a><br />", d.URL, d.Title)
Next d
Catch
End Try[/align]