之前突然有个想法 模拟ADODB中的 fields[]来显示字段

 之前突然有个想法 模拟ADODB中的 fields[]来显示字段.

列:$db->fields['cc'];

然后自己尝试写个类 可以实现了。。但是在遍历记录的时候 新变量不能变为初始化类的变量 我就郁闷了

只好先用这。。跑去论坛问了一下。没人回。。哭

不说废话了。。上代码。。哪位高人看的话恳请指教指教

<? php
/* *
 * file:class.db.php
 * @name ViDb
 * @author stefenjun
 * @version 1.2
 * @deprecated Db Class
 * 
*/
class  Vidb {
    
private   $dbhost ;
    
private   $dbuser ;
    
private   $dbpass ;
    
private   $dbname ;
    
public   $debug = 0 ;
    
public   $fields ;
    
    
public   function  __construct(){
        
$this -> dbhost = $dbhost ;
        
$this -> dbuser = $dbuser ;
        
$this -> dbpass = $dbpass ;
        
$this -> dbname = $dbname ;
    }
    
protected   function  Msg( $msg ){
        
echo   $msg ;
    }
    
protected   function  Error(){
        
return   mysql_error ();
    }
    
public   function  Dbconnect( $dbhost , $dbuser , $dbpass , $dbname ){
        
if  ( ! @ mysql_pconnect ( $dbhost , $dbuser , $dbpass , $dbname )){
            
$this -> Msg( " 无法连接数据库主机!</p> " . $this -> Error()); exit ;
        }
        
if  ( ! @ mysql_select_db ( $dbname )){
            
$this -> Msg( " 无法选择数据库!</p> " . $this -> Error()); exit ;
        }
    }
    
public   function  Query( $sqlstr ){
        
if  ( $this -> debug == 1 ){
            
echo   " $sqlstr<hr> " ;
        }

        
return   mysql_query ( $sqlstr );
    }
    
public   function  Fetch_Assoc( $query ){
        
return   $this -> fields = mysql_fetch_assoc ( $query );
    }
    
public   function  Fetch_Array( $query ){
        
return   $this -> fields = mysql_fetch_array ( $query );
    }
    
public   function  Num_rows( $query ){
        
return   mysql_num_rows ( $query );
    }
    
public   function  Fetch_Row( $query ){
        
return   mysql_fetch_row ( $query );
    }
    
public   function  Fetch_Object( $query ){
        
return   mysql_fetch_object ( $query );
    }
    
public   function  Dataselect( $table , $param = '' ){
        
$sql = " select * from $table where 1 " ;
        
if  ( ! empty ( $param ))  $sql .= "  and $param " ;
        
$query = $this -> Query( $sql );
        
$this -> fields = $this -> Fetch_Assoc( $query );
        
return   $this -> fields;
    }
    
public   function  DataCount( $table , $param = '' ){
        
$sql = " select count(*) as num from $table where 1 " ;
        
if  ( ! empty ( $param ))  $sql .= "  and $param " ;
        
$query = $this -> Query( $sql );
        
$this -> fields = $this -> Fetch_Assoc( $query );
        
return   $this -> fields[ ' num ' ];
    }
}
?>

 

成员中 public $debug;是调试信息 为1时 执行SQL语句时会返回SQL语句

要想达到ADODB的效果还。。。汗*_!

 

<?
$sql = " select field from table " ;
$query = $db -> Query( $sql );
while ( $db -> Fetch_Assoc( $query )){
    
echo   $db -> fields[ ' cc ' ] . " </p> " ;
}
?>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值