001
002 package com.rain;
003
004 import java.net.*;
005 import java.util.*;
006 import javax.servlet.http.*;
007 import java.lang.*;
008
009 /**
010 * ±Û ¿¶÷ Á¤º¸ °ü¸®
011 * @version 1.0
012 * @author http://cafen.net (outmind@cafen.net)
013 */
014 public class rainBoardHit{
015
016 /**
017 * ´ë»ó ±Û °íÀ¯¹øÈ£
018 */
019 public int muid = 0;
020
021 /**
022 * MYSQL CLASS
023 */
024 public rainMysql db_class = null;
025
026 /**
027 * ¸¶Áö¸· ¿À·ù ¸Þ¼¼Áö
028 */
029 public String error_msg = "";
030
031 /**
032 * »ý¼ºÀÚ
033 * @param muid ±Û °íÀ¯¹øÈ£
034 */
035 public rainBoardHit(int muid) {
036 this.muid = muid;
037 this.db_class = new rainMysql("mysql");
038 }
039
040 /**
041 * ±Û ¿¶÷ Ƚ¼ö Ãß°¡
042 * @param view_cnt ¿¶÷ Ƚ¼ö
043 * @return Ƚ¼ö Ãß°¡¿©ºÎ
044 */
045 public Boolean insertData(int view_cnt) {
046 rainRequest data = rainUtil.request;
047 if (this.db_class.queryOne("select user_ip from multi_board_view where muid = '"+this.muid+"' and user_id = '"+data.getID()+"' and user_ip = '"+data.getIP()+"' and regdate > "+(data.getNow() - 60*60*24)+"").equals("")) {
048 int viewuid = this.db_class.getLastID("multi_board_view", "viewuid");
049 String qm = ""
050 + "insert into multi_board_view ( "
051 + " viewuid, "
052 + " muid, "
053 + " view_cnt, "
054 + " user_ip, "
055 + " user_id, "
056 + " regdate "
057 + " ) values ( "
058 +" '"+viewuid+"', "
059 +" '"+this.muid+"', "
060 +" '"+view_cnt+"', "
061 +" '"+data.getIP()+"', "
062 +" '"+data.getID()+"', "
063 +" '"+data.getNow()+"' "
064 +" ) ";
065 this.db_class.change(qm);
066 this.synkData(view_cnt);
067 if (data.getNow() % 20 == 0)
068 this.db_class.change("delete from multi_board_view where regdate < "+(data.getNow() - 60*60*24*6));
069
070 return true;
071 } else
072 return false;
073 }
074
075 /**
076 * ±Û ¿¶÷ Ƚ¼ö Ãß°¡
077 * @return Ƚ¼ö Ãß°¡¿©ºÎ
078 */
079 public Boolean insertData() {
080 return this.insertData(1);
081 }
082
083 /**
084 * ¿¶÷ Ƚ¼ö ½ÌÅ©
085 * @param view_cnt ¿¶÷ Ƚ¼ö
086 */
087 public void synkData(int view_cnt) {
088 String qm = "update multi_board set hits = hits + '" + view_cnt + "' where muid = '" + this.muid + "' ";
089 this.db_class.change(qm);
090 }
091
092 /**
093 * ¿¶÷ Á¤º¸ »èÁ¦
094 */
095 public void deleteAllData() {
096 this.db_class.change("delete from multi_board_view where muid = '" + this.muid + "' ");
097 }
098
099 }