我正在测试小脚本以试图找出差异
test.php的:
<html>
<body><link rel='stylesheet' property='stylesheet' id='s' type='text/css' href='/template/s.css' media='all' /><iframe id='iframe' src='https://www.root-me.org/?page=externe_header'></iframe>
<h1>Authentication v 0.04</h1>
<form action="" method="GET">
Login <br/>
<input type="text" name="username" /><br/><br/>
Password <br/>
<input type="password" name="password" /><br/><br/>
<br/><br/>
<input type="submit" value="connect" /><br/><br/>
</form>
<fieldset><legend>Authentication log</legend><pre>
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
echo $_GET['username'].'Failed';
$first_line = strstr($_GET['username'], "\n", true);
?>
</pre></fieldset></body></html>
当我尝试制作Get请求时这样:
http://localhost/test.php?username=%0D%0Aadmin%0D%0whatever&password=password
结果:
admin authenticated
whatever failed
我是如何得到这个结果的?
&安培;如果想检查是否有2行
我可以查看
$first_line = strstr($_GET['username'], "\n", true);
现在我检查\n
而不是%0D%0A
那么他们之间有什么区别?