1 $username和$password没有用单引号括起来,可能引起sql注入
解决方法
$query = "select 1 from user where name='$username' and password='MD5($password)'";
2 变量没有过滤,可能其中会有特殊字符
解决方法
添加一个变量过滤函数
function clean($value){
$value = trim($value);
if(get_magic_quotes_gpc()){
$value=stripslashes($value);
}
if(function_exists("mysql_real_escape_string")){
$value=mysql_real_escape_string($value);
}else{
$value=addslashes($value);
}
return $value;
}
$username = clean($username);
大概就想到这么多了。。。有高手看出望提点
你sql写的都不对,字符串应该加引号的吧,用户提交的内容一般都要过滤的,要不容易注入
$username直接输入 没有进行处理,可以构造特殊查询,进行sql注入
应该是name='{$username}',楼主少个单引,楼主不妨把错误消息贴出来