在自己的电脑上实验输入端
<form name=aa action=acc.php method=post>
User <input name=user type=text></br>
Email <input name=email>
<input type=submit>
</form>输出端<?echo "User $_POST[user]</br>";
echo "Email $_POST[email]</br>";$con = mysql_connect("localhost","root","");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}mysql_select_db("test", $con);//$sql="SELECT * FROM email where name='".$_POST[user]."' email='".$_POST[email]."';";//echo $sql;$result = mysql_query("SELECT * FROM email where name like '".$_POST[user]."' and email like '".$_POST[email]."'");
if (mysql_num_rows($result))
echo "Matched!";
else
echo "Not match!";mysql_close($con);?>
我在输入端打'号是没有用的,不管怎么样传过去都变成转义符\'了,不能够做SQL注入。
请高手指点!谢谢!
<form name=aa action=acc.php method=post>
User <input name=user type=text></br>
Email <input name=email>
<input type=submit>
</form>输出端<?echo "User $_POST[user]</br>";
echo "Email $_POST[email]</br>";$con = mysql_connect("localhost","root","");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}mysql_select_db("test", $con);//$sql="SELECT * FROM email where name='".$_POST[user]."' email='".$_POST[email]."';";//echo $sql;$result = mysql_query("SELECT * FROM email where name like '".$_POST[user]."' and email like '".$_POST[email]."'");
if (mysql_num_rows($result))
echo "Matched!";
else
echo "Not match!";mysql_close($con);?>
我在输入端打'号是没有用的,不管怎么样传过去都变成转义符\'了,不能够做SQL注入。
请高手指点!谢谢!
email: (%%)
username: %%
email: %%
magic_quotes_gpc = On
吗?你把它改成 off 就不会这样想了
<form name=aa action=acc.php method=post>
你的是不是少了2个双引号了?
在HTTP中这样的写法也是可以接受的。和XML不一样……
成功了!
显示
User %%
Email %%
Matched!这是为什么呢?
SELECT * FROM email where name like '%%' and email like '%%';
谢了!^_^