Home > Article > Backend Development > php 地址栏没有变量,为什么会被$_request到
<code>if($_REQUEST['facebook_type'] == 'facebook'){ //彈出facebook彈窗 $smarty->assign('facebook_type','facebook'); } $$(function(){ {if $facebook_type eq 'facebook'} openBg_login(".facebook_register_box");//登录facebook弹窗 {/if} }) 一个用户使用facebook登录,链接会出现 ?facebook_type=facebook 然后在其他电脑打开网址,地址栏中没有出现 ?facebook_type=facebook,但是却弹窗了,为什么会弹窗? 当没有人登录的时候,就不会弹出,只要有一个用户用facebook登录了,其他用户在其他电脑打开页面就会默认弹出这个登录弹窗了,为什么地址栏中没有facebook_type还是进入了if语句完成了smarty的赋值?</code>
<code>if($_REQUEST['facebook_type'] == 'facebook'){ //彈出facebook彈窗 $smarty->assign('facebook_type','facebook'); } $$(function(){ {if $facebook_type eq 'facebook'} openBg_login(".facebook_register_box");//登录facebook弹窗 {/if} }) 一个用户使用facebook登录,链接会出现 ?facebook_type=facebook 然后在其他电脑打开网址,地址栏中没有出现 ?facebook_type=facebook,但是却弹窗了,为什么会弹窗? 当没有人登录的时候,就不会弹出,只要有一个用户用facebook登录了,其他用户在其他电脑打开页面就会默认弹出这个登录弹窗了,为什么地址栏中没有facebook_type还是进入了if语句完成了smarty的赋值?</code>
地址栏有变量是get,地址栏没变量放数据包当payload的post,request是get和post都接
应该是post方式提交的请求,抓包看下就明白了
先查post,如果post里没就是我说的
$_REQUEST这玩意居然把cookie都接过去!不止get和post
<code>$_REQUEST 默认情况下包含了 $_GET,$_POST 和 $_COOKIE 的数组。 以命令行方式运行时,将不包含 argv 和 argc 信息;它们将存在于 $_SERVER 数组。</code>
看看$_REQUEST,接受哪些类型啊
这个变量接受的是请求中的参数,包括通过 get, post 和 cookie 中的数据,如果是 post 或 cookie 中的参数,那么 URL 中肯定没有体现出来。