php 地址栏没有变量,为什么会被$_request到
程序员文章站
2022-05-23 15:07:05
...
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的赋值?
回复内容:
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的赋值?
地址栏有变量是get,地址栏没变量放数据包当payload的post,request是get和post都接
应该是post方式提交的请求,抓包看下就明白了
先查post,如果post里没就是我说的
$_REQUEST这玩意居然把cookie都接过去!不止get和post
$_REQUEST 默认情况下包含了 $_GET,$_POST 和 $_COOKIE 的数组。
以命令行方式运行时,将不包含 argv 和 argc 信息;它们将存在于 $_SERVER 数组。
看看$_REQUEST,接受哪些类型啊
这个变量接受的是请求中的参数,包括通过 get, post 和 cookie 中的数据,如果是 post 或 cookie 中的参数,那么 URL 中肯定没有体现出来。