作者qrtt1 (thinking in java)
看板java
標題Re: [問題] 資料庫取值的問題
時間Fri Mar 3 16:58:12 2006
※ 引述《wildrush (來跳土風舞吧)》之銘言:
: : 沒code沒真象
: : ps. 有trim了嗎
: 那是什麼@@??
: 底下是CODE
: <%
: String uid = request.getParameter("user");
: String pwd =
: new String(request.getParameter("password").getBytes("ISO-8859-1"));
: Class.forName("net.sourceforge.jtds.jdbc.Driver");
[---------------------------------]
這是那一個db, 真特別, 好奇ing
ps. 有的jdbc driver並不會自動實體化
必要時newInstance()一下
(以您的手冊為準^^)
: Connection con =
: DriverManager.getConnection("jdbc:jtds:sqlserver://localhost:1433/justRADIO");
: Statement st1 = con.createStatement();
: String sql1 ="select * from member where nember like '"+uid+"'";
[--------------------------------------------------------------]
呃, 改用prepared statement吧
: ResultSet rs = st1.executeQuery(sql1);
[--] 沒檢查uid的合法性就丟進去了,
留給人攻擊就是了
(最後的版本記得加啊^^)
: rs.next();
[-------]
唔, 你怎麼知道.next一定有東西, 或一定只有一個並且第一個是你要的
: String check =
: new String(rs.getString("password").getBytes("ISO-8859-1"));
: if (rs != null )
[--------] rs說: 與我何干啊@@" 俺是無辜的
: {
: if(check.equals(pwd))
: {
: out.print("歡迎登入 "+uid);
: }else
: {
: out.print("密碼錯誤<br>請重新輸入<BR>你輸入的是<br>帳號:"+uid+"<br>密碼:"+pwd);
: out.print("<br>"+rs.getString("password"));
: }
: }
: st1.close();
: con.close();
: %>
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 163.26.34.214