<p>数据库操作类 要看的<br /> <!--?php<br /--> class dbstuff {<br /> var $querynum = 0;<br /> var $link;<br /> var $histories;<br /> var $time;<br /> var $tablepre;<br /> <br /> function connect($dbhost, $dbuser, $dbpw, $dbname = &#39;&#39;, $dbcharset, $pconnect = 0, $tablepre=&#39;&#39;, $time = 0) {<br /> $this-&gt;time = $time;<br /> $this-&gt;tablepre = $tablepre;<br /> if($pconnect) {<br /> if(!$this-&gt;link = mysql_pconnect($dbhost, $dbuser, $dbpw)) {<br /> $this-&gt;halt(&#39;Can not connect to MySQL server&#39;);<br /> }<br /> } else {<br /> if(!$this-&gt;link = mysql_connect($dbhost, $dbuser, $dbpw, 1)) {<br /> $this-&gt;halt(&#39;Can not connect to MySQL server&#39;);<br /> }<br /> }<br /> <br /> if($this-&gt;version() &gt; &#39;4.1&#39;) {<br /> if($dbcharset) {<br /> mysql_query(&quot;SET character_set_connection=&quot;.$dbcharset.&quot;, character_set_results=&quot;.$dbcharset.&quot;, character_set_client=binary&quot;, $this-&gt;link);<br /> }<br /> <br /> if($this-&gt;version() &gt; &#39;5.0.1&#39;) {<br /> mysql_query(&quot;SET sql_mode=&#39;&#39;&quot;, $this-&gt;link);<br /> }<br /> }<br /> <br /> if($dbname) {<br /> mysql_select_db($dbname, $this-&gt;link);<br /> }<br /> <br /> }<br /> <br /> function fetch_array($query, $result_type = MYSQL_ASSOC) {<br /> return mysql_fetch_array($query, $result_type);<br /> }<br /> <br /> function result_first($sql) {<br /> $query = $this-&gt;query($sql);<br /> return $this-&gt;result($query, 0);<br /> }<br /> <br /> function fetch_first($sql) {<br /> $query = $this-&gt;query($sql);<br /> return $this-&gt;fetch_array($query);<br /> }<br /> <br /> function fetch_all($sql) {<br /> $arr = array();<br /> $query = $this-&gt;query($sql);<br /> while($data = $this-&gt;fetch_array($query)) {<br /> $arr[] = $data;<br /> }<br /> return $arr;<br /> }<br /> <br /> function cache_gc() {<br /> $this-&gt;query(&quot;DELETE FROM {$this-&gt;tablepre}sqlcaches WHERE expiry&lt;$this-&gt;time&quot;);<br /> }<br /> <br /> function query($sql, $type = &#39;&#39;, $cachetime = FALSE) {<br /> $func = $type == &#39;UNBUFFERED&#39; &amp;&amp; @function_exists(&#39;mysql_unbuffered_query&#39;) ? &#39;mysql_unbuffered_query&#39; : &#39;mysql_query&#39;;<br /> if(!($query = $func($sql, $this-&gt;link)) &amp;&amp; $type != &#39;SILENT&#39;) {<br /> $this-&gt;halt(&#39;MySQL Query Error&#39;, $sql);<br /> }<br /> $this-&gt;querynum++;<br /> $this-&gt;histories[] = $sql;<br /> return $query;<br /> }<br /> <br /> function affected_rows() {<br /> return mysql_affected_rows($this-&gt;link);<br /> }<br /> <br /> function error() {<br /> return (($this-&gt;link) ? mysql_error($this-&gt;link) : mysql_error());<br /> }<br /> <br /> function errno() {<br /> return intval(($this-&gt;link) ? mysql_errno($this-&gt;link) : mysql_errno());<br /> }<br /> <br /> function result($query, $row) {<br /> $query = @mysql_result($query, $row);<br /> return $query;<br /> }<br /> <br /> function num_rows($query) {<br /> $query = mysql_num_rows($query);<br /> return $query;<br /> }<br /> <br /> function num_fields($query) {<br /> return mysql_num_fields($query);<br /> }<br /> <br /> function free_result($query) {<br /> return mysql_free_result($query);<br /> }<br /> <br /> function insert_id() {<br /> return ($id = mysql_insert_id($this-&gt;link)) &gt;= 0 ? $id : $this-&gt;result($this-&gt;query(&quot;SELECT last_insert_id()&quot;), 0);<br /> }<br /> <br /> function fetch_row($query) {<br /> $query = mysql_fetch_row($query);<br /> return $query;<br /> }<br /> <br /> function fetch_fields($query) {<br /> return mysql_fetch_field($query);<br /> }<br /> <br /> function version() {<br /> return mysql_get_server_info($this-&gt;link);<br /> }<br /> <br /> function close() {<br /> return mysql_close($this-&gt;link);<br /> }<br /> <br /> function halt($message = &#39;&#39;, $sql = &#39;&#39;) {<br /> api_msg(&#39;run_sql_error&#39;, $message.&#39;<br /> <br /> &#39;.$sql.&#39;<br /> &#39;.mysql_error());<br /> }<br /> }<br /> ?&gt;</p>
T:0.009260s,M:251.28 KB
返回顶部 留言