ホームページ > バックエンド開発 > PHPチュートリアル > 新闻发布系统(例子)二dbconn_PHP

新闻发布系统(例子)二dbconn_PHP

WBOY
リリース: 2016-06-01 12:28:45
オリジナル
1096 人が閲覧しました


class CDBAbstract {
  var $_db_linkid = 0;
  var $_db_qresult = 0;
  var $RowData = array();
  var $NextRowNumber = 0;
  var $RowCount = 0;
  function CDBAbstract () {
    die ("CDBAbstract: Do not create instances of CDBAbstract! Use a subclass.");
  }
  function Open ($host, $user, $pass, $db = "") {
  }   
  function Close () {
  }
  function SelectDB ($dbname) {
  }   
  function Query ($querystr) {
  }
  function SeekRow ($row = 0) {
  }     
  function ReadRow () {
  }
  function _ident () {
    return "CDBAbstract/1.1";
  }
}

class CDBMySQL extends CDBAbstract {
  function CDBMySQL ($host, $user, $pass, $db = "") {
    $this->Open ($host, $user, $pass);
    if ($db != "")  
      $this->SelectDB($db);
  }   
  function Open ($host, $user, $pass) {
    $this->_db_linkid = mysql_connect ($host, $user, $pass);
  }   
  function Close () {
    @mysql_free_result($this->_db_qresult);
    return mysql_close ($this->_db_linkid);
  }   
  function SelectDB ($dbname) {
    if (@mysql_select_db ($dbname, $this->_db_linkid) == true) {
      return 1;     
    }  
    else {
      return 0;
    }    
  }    
  function  Query ($querystr) {
    $result = mysql_query ($querystr, $this->_db_linkid);
    if ($result == 0) {
      return 0;
    }  
    else {
      @mysql_free_result($this->_db_qresult);
      $this->RowData = array();       
      $this->_db_qresult = $result;
      $this->RowCount = @mysql_num_rows ($this->_db_qresult);
      if (!$this->RowCount) {
        // The query was probably an INSERT/REPLACE etc.
        $this->RowCount = 0;
      }  
      return 1;
    }
  }   
  function SeekRow ($row = 0) {
    if ((!mysql_data_seek ($this->_db_qresult, $row)) or ($row > $this->RowCount-1)) {
      printf ("SeekRow: Cannot seek to row %d\n", $row);
      return 0;
    }
    else {
      return 1;
    }
  }     
  function ReadRow () {
    if($this->RowData = mysql_fetch_array ($this->_db_qresult)) {
      $this->NextRowNumber++;
      return 1;
    }
    else {
      return 0;
    }
  }   
  function _ident () {
    return "CDBMySQL/1.1";
  }   
}

?> 
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート