freedom_wings4 2017-07-12 09:25 采纳率: 0%
浏览 923

关于这段php代码的一些问题

代码如下
<?php
if(eregi("hackerDJ",$_GET[id])) {
echo("

not allowed!

");
exit();
}
$_GET[id] = urldecode($_GET[id]);
if($_GET[id] == "hackerDJ")
{
  echo "<p>Access granted!</p>";
  echo "<p>flag: *****************} </p>";
}
?>

<br><br>
Can you authenticate to this website?

上面这段php代码,对get方式提交的参数id进行了url解码再判断。然而只把字符串“hackerDJ”进行一次url编码,就只会输出not allowed,要进行2次url编码才可以,原因有的地方说是因为浏览器会对收到的数据进行一次url解码,所以要多编码一次。
于是问题来了,php代码是在浏览器中才被解析执行的吗?如果php代码是在服务端执行的,那么浏览器会对接收到的数据先进行一次url解码应该不会影响到php代码的执行吧....................这点疑问,求指点

  • 写回答

2条回答 默认 最新

  • qq_27225843 2017-07-12 15:43
    关注

    php是脚本语言可以在浏览器端执行吧,不知道对不对

    评论

报告相同问题?

悬赏问题

  • ¥15 c程序不知道为什么得不到结果
  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置