mysql php连接类
下面这款mysql数据库连接文章,是我从一个cms搞下来的,很完整的,直接调用就OK了,代码如下:
class dbmysq { var $querynum = 0; var $link ; var $histories ; var $time ; var $tablepre ; function connect( $dbhost , $dbuser , $dbpw , $dbname = '' , $dbcharset , $pconnect = 0, $tablepre = '' , $time = 0) { $this ->time = $time ; $this ->tablepre = $tablepre ; if ( $pconnect ) { if (! $this ->link = mysql_pconnect( $dbhost , $dbuser , $dbpw )) { $this ->halt( 'can not connect to mysql server' ); } } else { if (! $this ->link = mysql_connect( $dbhost , $dbuser , $dbpw , 1)) { $this ->halt( 'can not connect to mysql server' ); } } if ( $this ->version() > '4.1' ) { if ( $dbcharset ) { mysql_query( "set character_set_connection=" . $dbcharset . ", character_set_results=" . $dbcharset . ", character_set_client=binary" , $this ->link); } if ( $this ->version() > '5.0.1' ) { mysql_query( "set sql_mode=''" , $this ->link); } } if ( $dbname ) { mysql_select_db( $dbname , $this ->link); } } function fetch_array( $query , $result_type = mysql_assoc) { return mysql_fetch_array( $query , $result_type ); } function result_first( $sql , & $data ) { $query = $this ->query( $sql ); $data = $this ->result( $query , 0); } function fetch_first( $sql , & $arr ) { $query = $this ->query( $sql ); $arr = $this ->fetch_array( $query ); } function fetch_all( $sql , & $arr ) { $query = $this ->query( $sql ); while ( $data = $this ->fetch_array( $query )) { $arr [] = $data ; } } function cache_gc() { $this ->query( "delete from {$this->tablepre}sqlcaches where expiry<$this->time" ); } function query( $sql , $type = '' , $cachetime = false) { $func = $type == 'unbuffered' && @function_exists( 'mysql_unbuffered_query' ) ? 'mysql_unbuffered_query' : 'mysql_query' ; if (!( $query = $func ( $sql , $this ->link)) && $type != 'silent' ) { $this ->halt( 'mysql query error' , $sql ); } $this ->querynum++; $this ->histories[] = $sql ; return $query ; } function affected_rows() { return mysql_affected_rows( $this ->link); } function error() { return (( $this ->link) ? mysql_error( $this ->link) : mysql_error()); } function errno() { return intval (( $this ->link) ? mysql_errno( $this ->link) : mysql_errno()); } function result( $query , $row ) { $query = @mysql_result( $query , $row ); return $query ; } function num_rows( $query ) { $query = mysql_num_rows( $query ); return $query ; } function num_fields( $query ) { return mysql_num_fields( $query ); } function free_result( $query ) { return mysql_free_result( $query ); } function insert_id() { return ( $id = mysql_insert_id( $this ->link)) >= 0 ? $id : $this ->result( $this ->query( "select last_insert_id()" ), 0); } function fetch_row( $query ) { $query = mysql_fetch_row( $query ); return $query ; } function fetch_fields( $query ) { return mysql_fetch_field( $query ); } function version() { return mysql_get_server_info( $this ->link); } function close() { return mysql_close( $this ->link); } //开源代码phpfensi测试数据 function halt( $message = '' , $sql = '' ) { exit ( '<br/>提示:数据库错误<br/>sql语句:' . $sql . '<br/>错误关键字:' . mysql_error()); } }查看更多关于mysql php连接类 - php类库的详细内容...
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://www.haodehen.cn/did29496