亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > PHP > 正文

PHP+redis實現添加處理投票的方法

2024-05-04 23:40:24
字體:
來源:轉載
供稿:網友

這篇文章主要介紹了PHP+redis實現添加處理投票的方法,結合實例較為詳細的分析了PHP+redis數據庫操作的相關技巧,具有一定參考借鑒價值,需要的朋友可以參考下

本文實例講述了PHP+redis實現添加處理投票的方法。分享給大家供大家參考,具體如下:

 

 
  1. <?php 
  2. header("Content-Type:text/html;charset=utf-8"); 
  3. include 'lib/mysql.class.php'
  4. $mysql_obj = mysql::getConn(); 
  5. if(class_exists('Redis')){ 
  6. //redis  
  7. $redis = new Redis(); 
  8. $redis->pconnect('127.0.0.1', 6379); 
  9. if(isset($_SERVER['HTTP_REFERER'])){ 
  10. $url_md5 = md5($_SERVER['HTTP_REFERER']); 
  11. $adve_key = 'adve';  
  12. $adve_key_exists = 'adve_exists'
  13. if(!$redis->exists($adve_key_exists)){ 
  14. $list = $mysql_obj->fetch_array("select * from admin_online_adve"); 
  15. if($list){ 
  16. foreach ($list as $key => $value) { 
  17. $url_hash = md5($value['adve_url']); 
  18. $adve_hash_key = $adve_key.":".$url_hash; 
  19. $id = $value['id']; 
  20. $redis->set($adve_hash_key,$id); 
  21. $redis->set($adve_key_exists,true); 
  22. $adve_new_key = $adve_key.':'.$url_md5; 
  23. if($redis->exists($adve_new_key)){ 
  24. $adve_plus = $adve_new_key.":plus" ; 
  25. if(!$redis->exists($adve_plus)){ 
  26. $redis->set($adve_plus,1);  
  27. }else
  28. $redis->incr($adve_plus); 
  29. $num = $redis->get($adve_plus); 
  30. if($num >100){ 
  31. $id = $redis->get($adve_new_key); 
  32. // insert to sql; 
  33. $mysql_obj->query("update admin_online_adve set adve_num=adve_num+$num where id=$id"); 
  34. $redis->set($adve_plus,1); 
  35. ?> 
  36. <html> 
  37. <head> 
  38. <meta http-equiv="refresh" content="1;url=https://itunes.apple.com/cn/app/san-guo-zhi15-ba-wangno-da-lu/id694974270?mt=8"
  39. <title>統計</title> 
  40. </head> 
  41. <body> 
  42. <img src="loading.gif">Loading... 
  43. </body> 
  44. </html> 

其中php連接mysql類mysql.class.php如下:

 

 
  1. <?php 
  2. define("MYSQL_SQL_GETDATA", 1); 
  3. define("MYSQL_SQL_EXECUTE", 2); 
  4. class mysql_db{ 
  5. var $_server; //數據庫服務器地址 
  6. var $_user; //數據庫連接帳號 
  7. var $_password; //數據庫連接密碼 
  8. var $_dbname; //數據庫名稱 
  9. var $_persistency=false//是否使用持久連接 
  10. var $_isConnect = false//是否已經建立數據庫連接 
  11. var $_charset="utf8"//數據庫連接字符集 
  12. var $_isDebug = false//是否Debug模式 
  13. var $_sql=array(); //執行sql語句數組 
  14. var $_db_connect_id; //數據庫連接對象標識 
  15. var $_result; //執行查詢返回的值 
  16. var $_record; 
  17. var $_rowset; 
  18. var $_errno = 0; 
  19. var $_error = "connection error"
  20. var $_checkDB = false
  21. function mysql_db($dbserver, $dbuser, $dbpassword,$database,$persistency = false,$autoConnect=false,$checkdb = false
  22. $this->_server = $dbserver; 
  23. $this->_user = $dbuser; 
  24. $this->_password = $dbpassword; 
  25. $this->_dbname = $database; 
  26. $this->_persistency = $persistency; 
  27. $this->_autoConnect = $autoConnect; 
  28. $this->_checkDB = $checkdb; 
  29. if($autoConnect){ 
  30. $this->connection(); 
  31. function connection($newLink = false
  32. if (!$newLink){ 
  33. if($this->_isConnect && isset($this->_db_connect_id)){ 
  34. @mysql_close($this->_db_connect_id); 
  35. $this->_db_connect_id = ($this->persistency) ? @mysql_pconnect($this->_server, $this->_user, $this->_password):@mysql_connect($this->_server, $this->_user, $this->_password,$newLink); 
  36. if ($this->_db_connect_id) 
  37. if ($this->version() > '4.1'
  38. if ($this->_charset != ""
  39. @mysql_query("SET NAMES '".str_replace('-', '', $this->_charset)."'", $this->_db_connect_id); 
  40. if ($this->version() > '5.0'
  41. @mysql_query("SET sql_mode=''", $this->_db_connect_id); 
  42. //檢測指定數據庫是否連接成功 
  43. if ($this->_checkDB){ 
  44. $dbname = mysql_query('SELECT database()',$this->_db_connect_id); 
  45. $dbname = mysql_fetch_array($dbname,MYSQL_NUM); 
  46. $dbname = trim($dbname[0]); 
  47. }else
  48. $dbname = ''
  49. if ($dbname==$this->_dbname || $dbname==''){ 
  50. if (!@mysql_select_db($this->_dbname, $this->_db_connect_id)) 
  51. @mysql_close($this->_db_connect_id); 
  52. $this->_halt("cannot use database " . $this->_dbname); 
  53. }else
  54. if ($this->_checkDB && !$newLink){ 
  55. $this->connection(true); 
  56. return true
  57. else 
  58. $this->_halt('connect failed.',false); 
  59. function setCharset($charset){ 
  60. //$charset = str_replace('-', '', $charset); 
  61. $this->_charset = $charset; 
  62. function setDebug($isDebug=true){ 
  63. $this->_isDebug = $isDebug; 
  64. function query($sql,$type=''
  65. return $this->_runSQL($sql,MYSQL_SQL_GETDATA,$type); 
  66. function execute($sql) 
  67. return $this->_runSQL($sql,MYSQL_SQL_EXECUTE,"UNBUFFERED"); 
  68. function _runSQL($sql,$sqlType=MYSQL_SQL_GETDATA,$type = ''
  69. if ($type =="UNBUFFERED"){ 
  70. $this->_result = @mysql_unbuffered_query($sql,$this->_db_connect_id); 
  71. }else
  72. $this->_result = @mysql_query($sql,$this->_db_connect_id); 
  73. //測試模式下保存執行的sql語句 
  74. if($this->_isDebug){ 
  75. $this->_sql[]=$sql; 
  76. if ($this->_result) 
  77. return $sqlType==MYSQL_SQL_GETDATA?$this->getNumRows():$this->getAffectedRows(); 
  78. }else
  79. $this->_halt("Invalid SQL: ".$sql); 
  80. return false
  81. function next($result_type=MYSQL_ASSOC) { 
  82. $this->fetchRow($result_type);  
  83. return is_array($this->_record); 
  84. function f($name) { 
  85. if(is_array($this->_record)){ 
  86. return $this->_record[$name]; 
  87. }else
  88. return false
  89. function fetchRow($result_type=MYSQL_ASSOC) 
  90. if( $this->_result ) 
  91. $this->_record = @mysql_fetch_array($this->_result,$result_type); 
  92. return $this->_record; 
  93. }else
  94. return false
  95. function getAll($sql,$primaryKey="",$result_type=MYSQL_ASSOC) 
  96. if ($this->_runSQL($sql,MYSQL_SQL_GETDATA)>=0){ 
  97. return $this->fetchAll($primaryKey,$result_type); 
  98. }else
  99. return false
  100. function getOne($sql,$result_type=MYSQL_ASSOC) 
  101. if ($this->_runSQL($sql,MYSQL_SQL_GETDATA)>0){ 
  102. $arr = $this->fetchAll("",$result_type); 
  103. if(is_array($arr)){ 
  104. return $arr[0]; 
  105. }else
  106. return false
  107. function fetchAll($primaryKey = "",$result_type=MYSQL_ASSOC) 
  108. if ($this->_result) 
  109. $i = 0; 
  110. $this->_rowset = array(); 
  111. if ($primaryKey==""
  112. while($this->next($result_type)) 
  113. $this->_rowset[$i] = $this->_record; 
  114. $i++; 
  115. }else
  116. while($this->next($result_type)) 
  117. $this->_rowset[$this->f($primaryKey)] = $this->_record; 
  118. $i++; 
  119. return $this->_rowset; 
  120. }else
  121. //$this->_halt("Invalid Result"); 
  122. return false
  123. function checkExist($sql) 
  124. return $this->query($sql)>0?true:false
  125. function getValue($sql, $colset = 0) 
  126. if ($this->query($sql)>0){ 
  127. $this->next(MYSQL_BOTH); 
  128. return $this->f($colset); 
  129. }else
  130. return false
  131. function getNumRows() 
  132. return @mysql_num_rows($this->_result); 
  133. function getNumFields() 
  134. return @mysql_num_fields($this->_result); 
  135. function getFiledName($offset) 
  136. return @mysql_field_name($this->_result, $offset); 
  137. function getFiledType($offset) 
  138. return @mysql_field_type($this->_result, $offset); 
  139. function getFiledLen($offset) 
  140. return @mysql_field_len($this->_result, $offset); 
  141. function getInsertId() 
  142. return @mysql_insert_id($this->_db_connect_id); 
  143. function getAffectedRows() 
  144. return @mysql_affected_rows($this->_db_connect_id); 
  145. function free_result() 
  146. $ret = @mysql_free_result($this->_result); 
  147. $this->_result = 0; 
  148. return $ret; 
  149. function version() { 
  150. return @mysql_get_server_info($this->_db_connect_id); 
  151. function close() { 
  152. return @mysql_close($this->_db_connect_id); 
  153. function sqlOutput($isOut = true, $all = true){ 
  154. if($all){ 
  155. $ret = implode("<br>",$this->_sql); 
  156. }else
  157. $ret = $this->_sql[count($this->_sql)-1]; 
  158. if ($isOut){ 
  159. echo $ret; 
  160. }else
  161. return $ret; 
  162. function _halt($msg="Session halted.",$getErr=true) { 
  163. if($this->_isDebug){ 
  164. if($getErr){ 
  165. $this->_errno = @mysql_errno($this->_db_connect_id); 
  166. $this->_error = @mysql_error($this->_db_connect_id); 
  167. printf("<b>MySQL _error</b>: %s (%s)<br></font>/n",$this->_errno,$this->_error); 
  168. die($msg); 
  169. }else
  170. die("Session halted."); 
  171. ?> 

希望本文所述對大家PHP程序設計有所幫助。


注:相關教程知識閱讀請移步到PHP教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
55夜色66夜色国产精品视频| 亚洲国语精品自产拍在线观看| 欧美激情综合亚洲一二区| 疯狂蹂躏欧美一区二区精品| 色偷偷91综合久久噜噜| 在线精品国产欧美| 国产91精品视频在线观看| 中文字幕欧美国内| 成人国产在线激情| 91在线国产电影| 欧美国产乱视频| 亚洲色图50p| 日韩免费观看视频| 亚洲成人久久一区| 成人黄色激情网| 亚洲免费中文字幕| 久久精品电影网| 亚洲国产精品va在线看黑人| 国产精品视频不卡| 日韩极品精品视频免费观看| 日韩av中文字幕在线免费观看| 一区二区欧美亚洲| 欧美黑人性视频| 中文精品99久久国产香蕉| 亚洲全黄一级网站| 欧美一级黄色网| 色播久久人人爽人人爽人人片视av| 亚洲精品99久久久久中文字幕| 亚洲综合国产精品| 日韩精品在线观看一区二区| 中文字幕国产精品| 亚洲春色另类小说| 久久久人成影片一区二区三区观看| 久久av在线看| 国模精品一区二区三区色天香| 精品一区电影国产| 精品日韩美女的视频高清| 亚洲精品福利视频| 国产精品一区二区久久国产| 国产美女搞久久| 欧美超级乱淫片喷水| 日韩精品极品在线观看| 亚洲精品v欧美精品v日韩精品| 日韩国产在线看| 中文字幕亚洲一区二区三区| 欧美丝袜一区二区三区| 日韩av网站在线| 欧美精品国产精品日韩精品| 欧美激情精品久久久久久免费印度| 日本高清视频精品| 久久精品国产亚洲精品| 国产亚洲激情视频在线| 国产91精品视频在线观看| 欧美亚洲成人网| 亚洲人成毛片在线播放| 日韩美女视频中文字幕| 欧美三级免费观看| 日韩av电影手机在线观看| 日韩精品极品毛片系列视频| 久久在线免费视频| 国产成人综合亚洲| 午夜精品久久久久久久99黑人| 日韩av免费看网站| 欧美黄色片在线观看| 久久久久久久久网站| 91九色在线视频| 欧美日韩国产一区在线| 日韩在线视频观看正片免费网站| 亚洲精品国精品久久99热一| 美女精品视频一区| 亚洲大胆人体视频| 午夜精品www| 欧美国产日韩一区| 国产成人精品av在线| 欧美日韩亚洲一区二| 成人精品福利视频| 午夜精品一区二区三区视频免费看| 国产日本欧美在线观看| 久久国产精品免费视频| 成人性生交大片免费看小说| 91色视频在线导航| 日韩欧美综合在线视频| 亚洲欧美999| 国产精品igao视频| 亚洲成人av在线| 日韩电影在线观看中文字幕| 亚洲自拍av在线| 欧美精品精品精品精品免费| 伊人av综合网| 亚州精品天堂中文字幕| 国产91色在线|免| 一本久久综合亚洲鲁鲁| 久久在线免费观看视频| 欧美大片在线免费观看| 国产精品成人免费视频| 伊人久久久久久久久久久久久| 国产成人97精品免费看片| 97色在线视频| 欧美日韩国产一区二区| 欧美野外猛男的大粗鳮| 在线免费观看羞羞视频一区二区| 精品视频偷偷看在线观看| 日韩欧美大尺度| 精品视频一区在线视频| 国产精品一区二区三区久久久| 日韩电影免费观看中文字幕| 欧美日本亚洲视频| 亚洲成年人在线播放| 成人午夜在线影院| 亚洲区bt下载| 精品亚洲夜色av98在线观看| 91免费在线视频| 亚洲成人精品视频| 亚洲国产中文字幕久久网| 欧美午夜影院在线视频| 91精品在线影院| 亚洲aⅴ日韩av电影在线观看| 欧美激情国内偷拍| 久久黄色av网站| 日韩一区二区久久久| 97人人模人人爽人人喊中文字| 亚洲日本中文字幕| 久久久伊人欧美| 日韩在线视频一区| 欧美日韩国产影院| 精品亚洲一区二区| 97免费中文视频在线观看| 国产一区二区黑人欧美xxxx| 成人黄色短视频在线观看| 欧美综合国产精品久久丁香| 国产午夜精品麻豆| 色爱av美腿丝袜综合粉嫩av| 亚洲色图13p| 亚洲香蕉伊综合在人在线视看| 亚洲第一偷拍网| 成人黄色免费看| 欧美成人剧情片在线观看| 人体精品一二三区| 92裸体在线视频网站| 美女黄色丝袜一区| 91精品国产91久久久| 欧美性猛交xxxx免费看漫画| 国产欧美日韩中文字幕| 91精品久久久久久久久久久| 日本精品久久久久久久| 亚洲精品国产suv| 日韩美女在线观看| 国产在线视频一区| 欧美精品18videos性欧| 国产欧美日韩视频| 欧美国产一区二区三区| 在线观看视频亚洲| 欧美日韩日本国产| 亚洲护士老师的毛茸茸最新章节| 欧美黑人狂野猛交老妇| 国产精品久久久亚洲| 另类图片亚洲另类| 亚洲人成亚洲人成在线观看| 成人福利视频在线观看| 日韩一级黄色av| 欧美成人中文字幕在线| 久久久噜噜噜久久| 欧美自拍大量在线观看| 日韩av电影院|