//*********************************************** ********************* //ここにデータベース操作クラスを構築して、すべてのデータベース操作をカプセル化します //バックグラウンド管理プログラムの使用を容易にするために拡張可能 クラスMySQLDB { 変数 $ホスト var $user var $passwd; var $database; var $conn; //コンストラクターを使用して変数を初期化します //同時にデータベースに接続します 関数 MySQLDB($host,$user,$password,$database) { $this->host = $host; $this->user = $user; $this->passwd = $password; $this->database = $database; $this->conn=mysql_connect($this->host, $this->user,$this->passwd) または Die("$this->ホストに接続できませんでした"); mysql_select_db($this->database,$this->conn) または Die("データベース $this->database に切り替えられませんでした"); } //この関数はデータベース接続を閉じるために使用されます functionClose() { MySQL_close($this->conn); } //この関数はデータベースクエリ操作を実装します 関数クエリ($queryStr) { $res =Mysql_query($queryStr, $this->conn) または die("データベースにクエリできませんでした"); $ を返します } //この関数はレコードセットを返します 関数 getRows($res) { $rowno = 0; $rowno = MySQL_num_rows($res); If($rowno>0) for($row=0;$row $rows[$row]=MySQL_fetch_array($res); // 本来はmysql_fetch_rowですが、配列で取り出すことができずインデックスのみ使用可能です //この方法ではインデックスと名前を使用できるため、より便利です } $ rowsを返します。 } } //この関数はデータベースのレコード数を取得します 関数 getRowsNum($res) { $rowno = 0; $rowno = mysql_num_rows($res); 戻る } //この関数はデータベーステーブルのフィールド数を返します 関数 getFieldsNum($res) { $フィールド番号 = 0; $fieldno = mysql_num_fields($res); $fieldno を返します; } //この関数はデータベーステーブルのフィールド名セットを返します 関数 getFields($res) { $fno = $this->getFieldsNum($res); If($fno>0) for($i=0;$i $fs[$i]=MySQL_field_name($res,$i);// i 番目のフィールドの名前を取得します } $ fs を返します。 } } } 使用する場合は、ファイルを直接要求してインスタンス化します。 $SqlDB = new MySQLDB("localhost","root","root","testdb"); $sql = "select * from tableX..."; $result = $SqlDB->Query($sql);//Query $rs = $SqlDB->getRows($result);// レコードセットを取得します $num = $SqlDB->getRowsNum($result);//レコード数を取得します ...残りの操作は値をループすることです for($i=0;$i echo($rs[$i]["フィールド名"]); } ... 最後に、データ接続を閉じることを忘れないでください $SqlDB->Close(); もちろん、これを行う必要はありません。php は自動的にログアウトします。ただし、これは良い習慣になる可能性があるため、そうすることをお勧めします。追加してください ...他の人も同じ例えをすることができます... わからない場合は、質問してください! |