Просмотр файла db/mysql.php

Размер файла: 5.3Kb
  1. <?php
  2.  
  3. if ( !defined('IN_PHPBB') )
  4. {
  5. die("ERROR!!! THIS FILE PROTECTED. IF YOU SAW THIS REPORT, MEANS HACKERS HERE IS NOTHING TO DO ");
  6. }
  7.  
  8. if(!defined("SQL_LAYER"))
  9. {
  10.  
  11. define("SQL_LAYER","mysql");
  12.  
  13. class sql_db
  14. {
  15.  
  16. var $db_connect_id;
  17. var $query_result;
  18. var $row = array();
  19. var $rowset = array();
  20. var $num_queries = 0;
  21.  
  22. function sql_db($sqlserver, $sqluser, $sqlpassword, $database, $persistency = true)
  23. {
  24.  
  25. $this->persistency = $persistency;
  26. $this->user = $sqluser;
  27. $this->password = $sqlpassword;
  28. $this->server = $sqlserver;
  29. $this->dbname = $database;
  30.  
  31. if($this->persistency)
  32. {
  33. $this->db_connect_id = @mysql_pconnect($this->server, $this->user, $this->password);
  34. }
  35. else
  36. {
  37. $this->db_connect_id = @mysql_connect($this->server, $this->user, $this->password);
  38. }
  39. if($this->db_connect_id)
  40. {
  41. if($database != "")
  42. {
  43. $this->dbname = $database;
  44. $dbselect = @mysql_select_db($this->dbname);
  45. if(!$dbselect)
  46. {
  47. @mysql_close($this->db_connect_id);
  48. $this->db_connect_id = $dbselect;
  49. }
  50. }
  51. return $this->db_connect_id;
  52. }
  53. else
  54. {
  55. return false;
  56. }
  57. }
  58.  
  59. function sql_close()
  60. {
  61. if($this->db_connect_id)
  62. {
  63. if($this->query_result)
  64. {
  65. @mysql_free_result($this->query_result);
  66. }
  67. $result = @mysql_close($this->db_connect_id);
  68. return $result;
  69. }
  70. else
  71. {
  72. return false;
  73. }
  74. }
  75.  
  76. function sql_query($query = "", $transaction = FALSE)
  77. {
  78. unset($this->query_result);
  79. if($query != "")
  80. {
  81. $this->num_queries++;
  82.  
  83. $this->query_result = @mysql_query($query, $this->db_connect_id);
  84. }
  85. if($this->query_result)
  86. {
  87. unset($this->row[$this->query_result]);
  88. unset($this->rowset[$this->query_result]);
  89. return $this->query_result;
  90. }
  91. else
  92. {
  93. return ( $transaction == END_TRANSACTION ) ? true : false;
  94. }
  95. }
  96.  
  97. function sql_numrows($query_id = 0)
  98. {
  99. if(!$query_id)
  100. {
  101. $query_id = $this->query_result;
  102. }
  103. if($query_id)
  104. {
  105. $result = @mysql_num_rows($query_id);
  106. return $result;
  107. }
  108. else
  109. {
  110. return false;
  111. }
  112. }
  113. function sql_affectedrows()
  114. {
  115. if($this->db_connect_id)
  116. {
  117. $result = @mysql_affected_rows($this->db_connect_id);
  118. return $result;
  119. }
  120. else
  121. {
  122. return false;
  123. }
  124. }
  125. function sql_numfields($query_id = 0)
  126. {
  127. if(!$query_id)
  128. {
  129. $query_id = $this->query_result;
  130. }
  131. if($query_id)
  132. {
  133. $result = @mysql_num_fields($query_id);
  134. return $result;
  135. }
  136. else
  137. {
  138. return false;
  139. }
  140. }
  141. function sql_fieldname($offset, $query_id = 0)
  142. {
  143. if(!$query_id)
  144. {
  145. $query_id = $this->query_result;
  146. }
  147. if($query_id)
  148. {
  149. $result = @mysql_field_name($query_id, $offset);
  150. return $result;
  151. }
  152. else
  153. {
  154. return false;
  155. }
  156. }
  157. function sql_fieldtype($offset, $query_id = 0)
  158. {
  159. if(!$query_id)
  160. {
  161. $query_id = $this->query_result;
  162. }
  163. if($query_id)
  164. {
  165. $result = @mysql_field_type($query_id, $offset);
  166. return $result;
  167. }
  168. else
  169. {
  170. return false;
  171. }
  172. }
  173. function sql_fetchrow($query_id = 0)
  174. {
  175. if(!$query_id)
  176. {
  177. $query_id = $this->query_result;
  178. }
  179. if($query_id)
  180. {
  181. $this->row[$query_id] = @mysql_fetch_array($query_id);
  182. return $this->row[$query_id];
  183. }
  184. else
  185. {
  186. return false;
  187. }
  188. }
  189. function sql_fetchrowset($query_id = 0)
  190. {
  191. if(!$query_id)
  192. {
  193. $query_id = $this->query_result;
  194. }
  195. if($query_id)
  196. {
  197. unset($this->rowset[$query_id]);
  198. unset($this->row[$query_id]);
  199. while($this->rowset[$query_id] = @mysql_fetch_array($query_id))
  200. {
  201. $result[] = $this->rowset[$query_id];
  202. }
  203. return $result;
  204. }
  205. else
  206. {
  207. return false;
  208. }
  209. }
  210. function sql_fetchfield($field, $rownum = -1, $query_id = 0)
  211. {
  212. if(!$query_id)
  213. {
  214. $query_id = $this->query_result;
  215. }
  216. if($query_id)
  217. {
  218. if($rownum > -1)
  219. {
  220. $result = @mysql_result($query_id, $rownum, $field);
  221. }
  222. else
  223. {
  224. if(empty($this->row[$query_id]) && empty($this->rowset[$query_id]))
  225. {
  226. if($this->sql_fetchrow())
  227. {
  228. $result = $this->row[$query_id][$field];
  229. }
  230. }
  231. else
  232. {
  233. if($this->rowset[$query_id])
  234. {
  235. $result = $this->rowset[$query_id][0][$field];
  236. }
  237. else if($this->row[$query_id])
  238. {
  239. $result = $this->row[$query_id][$field];
  240. }
  241. }
  242. }
  243. return $result;
  244. }
  245. else
  246. {
  247. return false;
  248. }
  249. }
  250. function sql_rowseek($rownum, $query_id = 0){
  251. if(!$query_id)
  252. {
  253. $query_id = $this->query_result;
  254. }
  255. if($query_id)
  256. {
  257. $result = @mysql_data_seek($query_id, $rownum);
  258. return $result;
  259. }
  260. else
  261. {
  262. return false;
  263. }
  264. }
  265. function sql_nextid(){
  266. if($this->db_connect_id)
  267. {
  268. $result = @mysql_insert_id($this->db_connect_id);
  269. return $result;
  270. }
  271. else
  272. {
  273. return false;
  274. }
  275. }
  276. function sql_freeresult($query_id = 0){
  277. if(!$query_id)
  278. {
  279. $query_id = $this->query_result;
  280. }
  281.  
  282. if ( $query_id )
  283. {
  284. unset($this->row[$query_id]);
  285. unset($this->rowset[$query_id]);
  286.  
  287. @mysql_free_result($query_id);
  288.  
  289. return true;
  290. }
  291. else
  292. {
  293. return false;
  294. }
  295. }
  296. function sql_error($query_id = 0)
  297. {
  298. $result["message"] = @mysql_error($this->db_connect_id);
  299. $result["code"] = @mysql_errno($this->db_connect_id);
  300.  
  301. return $result;
  302. }
  303.  
  304. }
  305.  
  306. }
  307.  
  308. ?>