codeigniter - codeigniter ccavenue 支付集成处理取消按钮
问题描述
我创建了一个带有 CCavenue 支付网关集成的 CodeIgniter Web 应用程序。当用户点击“ccavenue”按钮时,它会将我们带到 ccavenue 支付网关页面。案例1:支付完成后,返回商户主页。这可以。案例2:当用户在ccavenue页面点击“取消”时,会带我们回到“ccavenue”按钮可用的页面。到目前为止很好!但是当用户点击浏览器的后退按钮时,我们又一次登陆了 ccavenue 页面(因为那是我们之前的页面)。现在,要求是,它不应该回到 ccavenue 页面。而是转到商家网站的结帐页面
提前致谢!
解决方案
我认为,这个问题可以通过使用 Session 来解决。防止有人返回上一页。
只需添加或将此 set_session 作为您的触发按钮或 ETC,它指向您的“安全页面”。因此,只有当且仅当用户单击我所说的特定触发器时,您的过程才会通过:
$this->session->set_userdata('your_previous_page',TRUE);
并添加一些 if-else 以防止有人在设置 userdata 之前返回,我不知道你的控制器,所以请在将页面加载到你的 ccontroller 之前把它:
if($this->session->userdata('your_previous_page') === TRUE){
// show your page
}else{
// redirect to somewhere page to prevent it happen
}
处理成功后,只需取消设置会话:
$this->session->unset_userdata('your_previous_page');
因此,如果没有任何“your_previous_page”会话,用户将无法返回上一页。请提供您的控制器
推荐阅读
- javascript - React 映射和组件化复杂性
- windows - 为什么 dumpbin 中可执行文件的入口点地址与 WinDbg 不同?
- python - Pandas:具有特定索引的重复 for 循环
- r - 如何交叉多个列表
- java - MySQL:由于时区,表中的日期值与选择结果中的值不同
- excel - 扫描一个单元格,有 2 个变量( cells(i,j) )
- database - 如何将 Syncfusion 图表绑定到 SQL 数据源?
- macos - MPID_nem_tcp_init(384).............: gethostbyname 失败,Mac (errno 1)
- php - 一个键的 JSON 总和值,其中有更多具有相同名称的键 PHP
- wpf - CefSharp 添加 ssl 代理使应用程序不加载任何网站