我想获取数据库受影响的行数 可是$row怎么在实现类这边获取返回影响的行数呢,新手伤不起,这个弯不会转了<? 
// class_user.php 
class UserInfo{ 
   private $userName;  //属性,用户名 
   private $passWord;  //属性, 
   private $userGrade; //属性,用户级别
   private $row; 
   private $userInfo; //存储数据库返回信息的数组变量. 
  
    public function __construct($sql){ 
        require_once("db_config.php"); //包含配置信息. 
        $result= mysql_query($sql, $conn); // 执行查询语句 
        $this->userInfo = mysql_fetch_array($result); //返回查询结果到数组
$row=mysql_num_rows($result); 
mysql_query("set names UTF8");
        mysql_close($conn); //关闭数据库连接 
      $this->getInfo(); //调用传递信息的方法.  
    } 
    // 获取信息传递给属性的方法 
    private function getInfo(){ 
 
        $this->userName = $this->userInfo["username"]; 
        $this->passWord = $this->userInfo["password"];
        $this->userGrade = $this->userInfo["userGrade"]; 
    } 
      
    //返回每个属性的public 方法.    public function getRow(){ 

        return $this->row; 
    } 
    public function getUserName(){ 

        return $this->userName; 
    } 
      
    public function getPassword(){ 
        return $this->passWord; 
    } 
 
      
    public function getUserGrade(){ 
        return$this->userGrade; 
    } 



$sql= "select * from userinfo where username='sa' ";
require_once("class_user.php");   
$user= new UserInfo($sql); //创建一个user对象. 
    //书写sql
$row= $user->getRow(); 
$username= $user->getUserName(); //分别调用方法取得数据 
$password= $user->getPassword(); 
$usergrade= $user->getUserGrade(); 
  
echo"your name is ".$username."<br>";  //输出数据 
echo"your password is ".$password."<br>";  echo"your grade is ".$usergrade."<br>"; 
echo"your ROW is ".$row."<br>"; 
?>php数据库sqlfunction

解决方案 »

  1.   

    select  语句不返回受影响的行数。
    DML语句才返回受影响的行数(insert,delete,update)
    你把sql语句改一下,不用select,用insert或者其他。
    页面就可以echo 出$row的值了
      

  2.   

    你得类写的很奇怪啊,看你得类,应该只是针对单挑记录的,但是的你sql取的是一个集合,而你还需要知道的几个的记录数是多少,这个怎么看不对啊……
      

  3.   


    那个返回不是问题关键,我也知道 我只是想知道在实现类之前使用$row只是在后面做个判断数据库插入是否成功而已