联系官方销售客服

1835022288

028-61286886

求助 版主:官方研发技术组
form表单将get方式改成post方式后,就提示:跨站验证禁止此操作
类型:迅睿CMS 更新时间:2020-12-19 11:50:28

form表单将get方式改成post方式后,就提示:跨站验证禁止此操作

代码如下:

{xunruicms_img_title}


参考了别人提过的问题,将 {dr_form_search_hidden()} 删掉改成 {$form} 结果一样。

请问下:

1、这个产生的原因是什么?

2、该如何调整?如何保证跨站验证功能开启的同时解决这个问题?

谢谢!


补充:我后台“跨站验证”关闭的话,这个页面会一直跳到后台首页。

回帖
  • 官方研发技术-西门
    #1楼    官方研发技术-西门
    2020-12-19 00:22:15
    Chrome 0
    满意答案
  • 官方研发技术-西门
    #2楼    官方研发技术-西门
    2020-12-19 00:37:47
    Chrome 0
    跨站验证就是验证隐藏域信息,你网页源代码看看网页form的代码
  • 官方研发技术-西门
    #3楼    官方研发技术-西门
    2020-12-19 00:38:48
    Chrome 0


    这个按钮有点问题,点击它,他会跳到首页,改成我一楼打给你的教程代码
  • 飞鱼
    #4楼    飞鱼
    2020-12-19 11:50:01
    Chrome 0


    修改的地方:1、action里的{SELF}去掉了,看了源码这里地址会变成后台入口地址,所以会提交到后台首页去;2、{dr_form_search_hidden()} 改成 {$form},并在form表单前加{php extract(dr_get_form_post_value('自定义表单名'))},区别在于: {dr_form_search_hidden()}生成的源码是:

    不包含 csrf_test_name 值,所以会验证不通过~ {$form}生成的源码是:

    包含了csrf验证需要的值,所以表单值接收的时候正确就通过了。
    问题已解决,谢谢! 官方研发技术-西门
  • 飞鱼
    #5楼    飞鱼
    2020-12-19 11:50:28
    Chrome 0
    @官方研发技术-西门:非常感谢!