PDA

View Full Version : سوال: درج آگهی بلافاصله بعد از برگشت از درگاه بانک



bftarane
جمعه 19 اردیبهشت 1393, 16:40 عصر
سلام.
من یه سایت آگهی طراحی کردم که روند کار رو به این شکل در نظر گرفتم:
ابتدا کاربر از طریق لینک افزایش موجودی
یا وارد درگاه بانک میشه و موجودیش رو افزایش می ده

یا اگه به طریق کارت به کارت و شماره حساب پول واریز کرده باشه
یه قسمت گذاشتم که شماره سریال و تاریخ پرداخت رو وارد می کنه که بعد که ادمین تأیید کرد موجودیش افزایش پیدا می کنه و حالا می تونه آگهی درج کنه

بعد در صفحه درج آگهی اگه خواست اگهی پولی درج کنه
موجودیش چک می شه و اگه کافی بود درج میشه اگه نبود پیغام میده که کافی نیست موجودی شما
.................................................. .................................................. ..


منتها الآن کارفرما میگه فرضاً شاید یه کاربر فقط می خواد یه بار آگهی درج کنه
بنابراین این فیلد موجودی اضافه هست

یعنی می خواد کاربر اطلاعات آگهی رو وارد کنه
بعد مبلغ هم محاسبه بشه
و دکمه پرداخت که زده شده بره به درگاه بانک و مبلغ رو پرداخت کنه

و همین که مبلغ پرداخت شد آگهی هم ثبت بشه (یعنی نمی خواد اول از طریق یه صفحه دیگه افزایش موجودی بده بعد از طریق یه صفحه دیگه آگهی درج کنه، میخواد پرداخت و درج همزمان انجام بشه)



چیزی که به ذهن خودم می رسه اینه که اطلاعات وارد شده برای آگهی رو از قبیل عنوان و شرح و ... رو در سشن نگه دارم و کاربر دکمه پرداخت رو که زد و پرداخت انجام شد
خوب به یه صفحه در سایت من برگشت داده میشه
در Page Load اون
صفحه بیام و در صورت موفقیت آمیز بودن پرداخت
اطلاعات موجود در سشن ها رو
در دیتابیس ذخیره کنم

حالا می خوام بدونم سناریویی که در نظر گرفتم آیا درسته و جواب میده؟

majidnazari65
جمعه 19 اردیبهشت 1393, 17:44 عصر
به نظرم بهتره قبل از ارسال به درگاه بانک اول اطلاعات آگهی رو در دیتابیس ذخیره کنی و بعد آی دی این آگهی رو به صورت querystring به آدرس بازگشت از درگاه بچسبونی. مثلا اگه آی دی آگهی درج شده 5 باشه و صفحه بازگشت از درگاه paymentBack.aspx باشه آدرس بازگشت از درگاه رو به این صورت تنظیم کن:
http://yourSite.com/paymentBack.aspx?adID=5
حالا تو صفحه paymentBack.aspx بررسی کن که اگر تراکنش موفق بود آگهی شماره 5 فعال شه.

bftarane
جمعه 19 اردیبهشت 1393, 18:44 عصر
بعد آی دی این آگهی رو به صورت querystring به آدرس بازگشت از درگاه بچسبونی
ممنون. یه خورده پیش خودم به این نتیجه رسیده بودم که میتونم قبلش ذخیره کنم و بعد از بازگشت از درگاه، تأیید.
که صحبتهای شما فکرم رو تأیید می کنه.
البته من فکر کردم آی دی رو در سشن نگه دارم و موقع برگشت آی دی رو از سشن بگیرم و فیلد Active رکورد با این آی دی رو True کنم.
من با کوئری استرینگ کار کردم وقتی فقط صحبت از صفحات داخلی سایت خودم هست.

ولی در این شرایط که شما گفتید متوجه نشدم آی دی رو کجا نگه دارم که موقع برگشت بتونم به آدرس صفحه برگشت بچسبونمش؟ آخه این طوری از سایت خودم خارج شدم و دیگه به اون آی دی که در درگاه بانک دسترسی ندارم یا شاید دارم اشتباه می کنم؟

majidnazari65
جمعه 19 اردیبهشت 1393, 19:20 عصر
هنگام ارسال اطلاعات به درگاه بانک علاوه بر قیمت یک پارامتر هم به عنوان url بازگشت از درگاه ارسال میشه. یعنی آدرسی که درگاه بعد از انجام تراکنش کاربر رو به اون صفحه منتقل میکنه. تو این صفحه شما بررسی می کنی که تراکنش موفق بوده یا خیر. مثلا آدرس http://yourSite.com/paymentBack.aspx (http://yoursite.com/paymentBack.aspx?adID=5) . حالا شما بجای اینکه هنگام ارسال اطلاعات این آدرس رو به عنوان url بازگشت از درگاه بفرستی بجاش آدرس http://yoursite.com/paymentBack.aspx?adID=5 رو ارسال کنید. در واقع شما این آدرس رو قبل از ارسال به درگاه بر اساس آگهی که ساخته شده میسازی. حالا کاربر بعد از انجام تراکنش به این آدرس برمیگرده.