select * from user where account=lower(:POST); 这个吗
这个不是mysql是php吧 这里的strtolower()应该是php里的一个方法$_POST['username']是从post的请求里得到的username的参数换成java的写法是 String sql = "SELECT * FROM `user` WHERE `Account`= '" + request.getPararmeter("username").toLowerCase() + "' LIMIT 1"这里是sql注入的方式调用,不安全。
这个转移成sql语句就是 SELECT * FROM `user` WHERE `Account`= 'ddddd' where rownum = 1;
请看看下面语句有什么问题?19 $sql = "SELECT * FROM `BadDut.user` WHERE `Account`=".strtolower($_POST['username'])."' LIMIT 1"; 20 $result = oci_parse($con,$sql); 21 oci_execute($result); 这段代码报错: ORA-01756:quoted string not properly terminated in ... 19行
经修改后: 19 $sql = "SELECT * FROM `BadDut.user` WHERE `Account`='".strtolower($_POST['username'])."' LIMIT 1"; 第20行报错: ora-00911: invalid character in on line 20
这个吗
这个不是mysql是php吧
这里的strtolower()应该是php里的一个方法$_POST['username']是从post的请求里得到的username的参数换成java的写法是
String sql = "SELECT * FROM `user` WHERE `Account`= '" + request.getPararmeter("username").toLowerCase() + "' LIMIT 1"这里是sql注入的方式调用,不安全。
SELECT * FROM `user` WHERE `Account`= 'ddddd' where rownum = 1;
20 $result = oci_parse($con,$sql);
21 oci_execute($result);
这段代码报错:
ORA-01756:quoted string not properly terminated in ... 19行
19 $sql = "SELECT * FROM `BadDut.user` WHERE `Account`='".strtolower($_POST['username'])."' LIMIT 1";
第20行报错:
ora-00911: invalid character in on line 20