?? user.java
字號:
package com.laoer.bbscs.user;import java.sql.*;import java.io.*;import java.util.*;import com.laoer.bbscs.db.*;import com.laoer.bbscs.txthtml.*;import com.laoer.bbscs.tool.MD5;/** * Title: BBS-CS * Description: BBS-CS(BBS式虛擬社區系統) * Copyright: Copyright (c) 2002 * Company: loveroom.com.cn * @author laoer * @version 3.0 */public class User { String SQL = ""; DbTrans myDbTrans; DoText myDoText; ResultSet rs = null; MD5 myMD5; public User() { this.myDbTrans = new DbTrans(); this.myDoText = new DoText(); this.myMD5 = new MD5(); } public boolean isUser(String userName) { boolean isUser = false; int numIsUser = 0; SQL = "select count(*) as numIsUser from user where name='"+ userName +"'"; try { rs = myDbTrans.executeQuery(SQL); if (rs.next()) { numIsUser = rs.getInt("numIsUser"); } rs.close(); } catch (SQLException e){ } if (numIsUser != 0) { isUser = true; } else { isUser = false; } return isUser; } public boolean isUser(String userName, String userPassWD) { boolean isUser = false; int numIsUser = 0; SQL = "select count(*) as numIsUser from user where name='"+ userName +"' and passwd1='"+ myMD5.getMD5ofStr(userPassWD) +"'"; try { rs = myDbTrans.executeQuery(SQL); if (rs.next()) { numIsUser = rs.getInt("numIsUser"); } rs.close(); } catch (SQLException e){ } if (numIsUser != 0) { isUser = true; } else { isUser = false; } return isUser; } public String getUserID(String userName) { String userID = ""; SQL = "select ID from user where name ='"+ userName +"'"; try { rs = myDbTrans.executeQuery(SQL); if (rs.next()) { userID = rs.getString("ID"); } rs.close(); } catch (SQLException e){ } return userID; } public boolean isHaveEmail(String strEmailAdd) { boolean isHaveEmail = false; int numIsHaveEmail = 0; SQL = "select count(*) as numIsHaveEmail from user where email='" + strEmailAdd + "'"; try { rs = myDbTrans.executeQuery(SQL); if (rs.next()) { numIsHaveEmail = rs.getInt("numIsHaveEmail"); } rs.close(); } catch (SQLException e){ } if (numIsHaveEmail != 0) { isHaveEmail = true; } else { isHaveEmail = false; } return isHaveEmail; } public boolean addUser(String strName,String strNick,String strEmailAdd,String strPasswd,String strQuestion,String strAnswer) { boolean addUser = false; String strPasswd1 = ""; strPasswd1 = myMD5.getMD5ofStr(strPasswd); SQL = "insert into user (name,nick,email,passwd,passwd1,question,answer,logintime) values ('"+ strName +"','"+ strNick +"','"+ strEmailAdd +"','"+ strPasswd +"','"+ strPasswd1 +"','"+ strQuestion +"','"+ strAnswer +"',now())"; try { myDbTrans.executeUpdate(SQL); addUser = true; } catch (SQLException e){ return false; } int intUID = 0; SQL = "select ID from user where name = '"+ strName +"'"; try { rs = myDbTrans.executeQuery(SQL); if (rs.next()) { intUID = rs.getInt("ID"); } else { return false; } rs.close(); } catch (SQLException e){ } SQL = "insert into userdata (UID,power,hpower) values ('"+ intUID +"',10,10)"; try { myDbTrans.executeUpdate(SQL); addUser = true; } catch (SQLException e){ return false; } SQL = "insert into mydata (UID) values ('"+ intUID +"')"; try { myDbTrans.executeUpdate(SQL); addUser = true; } catch (SQLException e){ return false; } return addUser; } public boolean userLogin(String userName) { String strUserID = getUserID(userName); SQL = "select (UNIX_TIMESTAMP(now())-UNIX_TIMESTAMP(likai)) as nstaytime from user where ID="+ strUserID; int nstaytime = 0; try { rs = myDbTrans.executeQuery(SQL); if (rs.next()) { nstaytime = rs.getInt("nstaytime"); nstaytime=nstaytime/3600; } rs.close(); } catch (SQLException e){ } SQL = "select power,hpower from userdata where UID="+ strUserID; int power = 0; int hpower = 0; int hfpower = 0; try { rs = myDbTrans.executeQuery(SQL); if (rs.next()) { power=rs.getInt("power"); hpower=rs.getInt("hpower"); } rs.close(); } catch (SQLException e){ } hfpower = hpower*nstaytime/12; int zpower = hfpower + power; if (zpower >= hpower) { hfpower = hpower - power; } SQL = "update userdata set nstaytime="+ nstaytime +",power=power+"+ hfpower +" where UID="+ strUserID; try { myDbTrans.executeUpdate(SQL); } catch (SQLException e){ return false; } SQL = "update user set logintime=now(),cishu=cishu+1 where ID="+ strUserID; try { myDbTrans.executeUpdate(SQL); } catch (SQLException e){ return false; } return true; } public int guestLogin() { int guestID = getGuestMaxID(); while (!addGuest(guestID)) { guestID = getGuestMaxID(); } return guestID; } public int getGuestMaxID() { int numMaxID = 1; SQL = "select max(ID)+1 as numMaxID from guestuser"; try { rs = myDbTrans.executeQuery(SQL); if (rs.next()) { numMaxID = rs.getInt("numMaxID"); } rs.close(); if (numMaxID == 0) { numMaxID = 1; } } catch (SQLException e) { } return numMaxID; } public boolean addGuest(int guestID) { SQL = "insert into guestuser (ID,guestname,glogintime) values ('"+ guestID +"','Guest"+ guestID +"',now())"; try { myDbTrans.executeQuery(SQL); return true; } catch (SQLException e) { return false; } } public int getOlineUser() { int numOlineUser = 0; SQL = "select count(*) as numOlineUser from user WHERE (UNIX_TIMESTAMP(NOW())-UNIX_TIMESTAMP(logintime))<=180"; try { rs = myDbTrans.executeQuery(SQL); if (rs.next()) { numOlineUser = rs.getInt("numOlineUser"); } rs.close(); } catch (SQLException e) { } return numOlineUser; } public void userRef(String strUserID) { int staytime = 0; SQL = "select (UNIX_TIMESTAMP(now())-UNIX_TIMESTAMP(logintime)) as tltime from user where ID="+ strUserID; try { rs = myDbTrans.executeQuery(SQL); if (rs.next()) { staytime = rs.getInt("tltime"); } rs.close(); } catch (SQLException e) { } SQL = "update userdata set staytime=staytime+"+ staytime +",nstaytime=0 where UID="+ strUserID; try { myDbTrans.executeUpdate(SQL); } catch (SQLException e) { } SQL = "update user set logintime=now(),likai=now() where ID="+ strUserID; try { myDbTrans.executeUpdate(SQL); } catch (SQLException e) { } } public void guestRef(String strGuestID) { SQL = "update guestuser set glogintime = now() where ID = "+strGuestID; try { myDbTrans.executeUpdate(SQL); } catch (SQLException e) { } } public int getOlineGuest() { int numOlineGuest = 0; SQL = "select count(*) as numOlineGuest from guestuser WHERE (UNIX_TIMESTAMP(NOW())-UNIX_TIMESTAMP(glogintime))<=180"; try { rs = myDbTrans.executeQuery(SQL); if (rs.next()) { numOlineGuest = rs.getInt("numOlineGuest"); } rs.close(); } catch (SQLException e) { } return numOlineGuest; } public boolean isUnPost(String strUserName) { int numIsUnPost = 0; SQL = "select count(*) as numIsUnPost from unpost where (UNIX_TIMESTAMP(unposttime)-UNIX_TIMESTAMP(NOW()))>0 and Uname='"+strUserName+"'"; try { rs = myDbTrans.executeQuery(SQL); if (rs.next()) { numIsUnPost = rs.getInt("numIsUnPost"); } rs.close(); } catch (SQLException e) { } if (numIsUnPost != 0) { return true; } else { return false; } } public boolean setUserUnPost(String strUserID) { SQL = "update user set post = 1 where ID="+strUserID; try { myDbTrans.executeUpdate(SQL); return true; } catch (SQLException e) { return false; } } public boolean setUserPost(String strUserName) { SQL = "update user set post = 0 where name='"+strUserName+"'"; try { myDbTrans.executeUpdate(SQL); return true; } catch (SQLException e) { return false; } } public void close() { try { myDbTrans.close(); } catch (SQLException e){ } }}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -