Test Buy Now button

Nếu mà để trang trắng hoàn toàn, rồi add đoạn code này vào, thì chạy okie. Nhưng nếu có 1 cái sitemaster ở ngoài, rồi mình đặt đoạn code dưới đây vào thì không chạy được. Q nghĩ là do cái thẻ form, vì cái site.master nó có 1 cái form bao ở ngoài rồi, nếu như mình đặt tên 1 cái form nữa thì sẽ là form lồng form.

 

    <h2>Order</h2>
<form action="https://www.sandbox.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_s-xclick">
<input type="hidden" name="hosted_button_id" value="HZT2MMYJL8ME2">
<input type="image" src="https://www.sandbox.paypal.com/en_US/i/btn/btn_buynowCC_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
<img alt="" border="0" src="https://www.sandbox.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1">
</form>
Session Trong paypal, phải set session[Payment_Amount] thành subtotal, do đó nên Q test session. Dùng code ở trang http://kb2.adobe.com/cps/165/tn_16563.html
để thử set giá trị cho session. Tuy nhiên, code này không chạy được nếu bỏ vào project của mình (Q cũng create 2 trang để test)
Nhưng nếu phần code đó bỏ vào 1 project web riêng rẽ thì lại chạy được. View source thì sự khác biệt của 2 bên, tạm gọi là MVC và Basic web là
MVC thì khi asp.net chuyển thành code HTML, không có cái phần EVENTVALIDATION, nhưng Basic Web thì lại có. Hiện giờ vẫn không hiểu tại sao nó lại ra như thế?
<input type="hidden" name="__EVENTVALIDATION" id="__EVENTVALIDATION" value="/wEWAwLkxZjTDAK5h62pDwKM54rGBgX2oS3nMYi+QXsJmMMlgHC+8Yw1s8oBge5BXCpiKUj

Payment Data Transfer

Tình hình hôm nay thì khá hơn rồi, quyết định làm 1 cái master mới, tên là Theme.Master, và cái này không có cái <form> nào cả. Mục đích là để tạo ra cái form cho Paypal, để trả tiền cho nó đơn giản.

Vấn đề trả tiền với Paypal coi như là xong, ở trong trong /Paypal/Success, mình sẽ phải làm thêm 1 cái để lấy giá trị trả về từ Paypal, thực hiện việc đưa receipt ra cho customer. Vấn đề ở chỗ này là bởi vì mình muốn đơn giản, nên chỉ truyền lên Paypal cái giá cuối cùng mà người ta phải trả thôi, nên lúc Paypal trả giá trị về, thì cũng chỉ trả về giá trị tổng cộng. Làm sao để mình vẫn lưu được cái cart cũ của user? Nếu không có time thì cứ coi như trả tiền xong, ghi ra câu "Successful payment" là khỏe.

Hiển thị receipt sau khi trả tiền xong

Vẫn chưa làm cái này, mới chỉ đơn giản là hiển thị những gì Paypal trả về. Những thứ khác cần làm:

Xóa Session["cart"]

Reset Session["totalItems"]

Set Session["totalItems"] = 0 ngay khi site mới bắt đầu load, để có giá trị mặc định là 0 lúc ban đầu

Có cần hiển thị lại lần nữa những gì khách hàng đã mua không, hay chỉ đơn giản là say thank you, và để mấy cái link

Bắt khách hàng phải login trước khi mua hàng. Hiện giờ đã có session[userLogged] rồi, nhưng userLogged đó không chỉ lưu userID, mà lưu tất tần tật mọi thứ

 

Những biến Sessions

totalItems

cart

userLogged

Last edited Jan 31, 2011 at 4:53 PM by npxquynh, version 8

Comments

No comments yet.