sqlStr = "select * from BookAdmin where adminuser = '" +
dataFormat.toSql(username) + "' and adminpass = '" +
dataFormat.toSql(passwd) + "'";
我不明白是什么意思这是dataFormat类中的tosql静态方法 dataformat是字符处理类
public static String toSql(String str) {
String sql = new String(str);
return strReplace(sql, "'", "''");
dataFormat.toSql(username) + "' and adminpass = '" +
dataFormat.toSql(passwd) + "'";
我不明白是什么意思这是dataFormat类中的tosql静态方法 dataformat是字符处理类
public static String toSql(String str) {
String sql = new String(str);
return strReplace(sql, "'", "''");
dataFormat.toSql(username) + " ' and adminpass = '" +
dataFormat.toSql(passwd) + " '";
我不明白是什么意思 这是dataFormat类中的tosql静态方法 dataformat是字符处理类
public static String toSql(String str) {
String sql = new String(str);
return strReplace(sql, " '", " ' '"); 这个toSql(string str)函数实现的功能是把字符串里面的单引号(')全部替换成两个单引号(''),
如将'aaa'替换成''aaa''返回。
上面把sqlStr这个sql语句里面的username和passwd两个变量的值进行替换的目的,看题目应该是为了防止SQL注入的。
楼主若还是不明白,可以看看防止SQL注入这方面的知识
sqlStr = "select * from BookAdmin where adminuser = '" +
dataFormat.toSql(username) + " ' and adminpass = '" +
dataFormat.toSql(passwd) + " '";
例如我现在把变量a的值传到一句SQL语句里面:
string sql="select * from tablename where id=" + a;
类似这样的。。
如果a的值为2,那么这时候sql="select * from tablename where id=2"就是这样一个字符串```
汗。这个东西太基本了。我不知道怎么讲了。。呵呵```
另外,结贴就是点帖子最上面的“管理帖子”,然后操作就行了``
语句要是在数据库里写,--查询所有信息
select * from Bookadmin where adminuser='登录的用户名'
adminpass='登录的密码'你在页面下写的话,就要用string sql = 拼串
dataFormat.toSql(username) 应该是你程序对用户名的处理
转换你的串或提高安全的一个方法吧