php connection mysql database operation class This is a relatively complete mysql operation class. Yesterday I wrote a simple code to connect to the mysql database. Compared to this one, that one is the simplest. This one includes data query, update, delete, etc. .
php tutorial connection mysql tutorial database tutorial operation class
This is a relatively complete mysql operation class. Yesterday I wrote a simple code to connect to the mysql database. Compared to this one, that one is the simplest. This one includes data query, update, delete, etc. .
*/
class mysql{
private $db_host; //Database host
private $db_user; //Database user name
Private $db_pwd; //Database password
Private $db_database; //Database name
Private $conn; //Database connection identifier;
private $sql; //SQL statement executed
private $result; //query resource identifier
Private $coding; //Database encoding, gbk, utf8, gb2312
Private $show_error = true; //Used for local debugging, print errors/**
* Constructor
*
* @access public
* @parameter string $db_host Database host
* @parameter string $db_user Database user name
* @parameter string $db_pwd Database password
* @parameter string $db_database Database name
* @parameter string $coding Coding
* @return void
*/
public function __construct($db_host, $db_user, $db_pwd, $db_database, $coding){
$this->db_host = $db_host;
$this->db_user = $db_user;
$this->db_pwd = $db_pwd;
$this->db_database = $db_database;
$this->coding = $coding;
$this->connect();
}/**
* Link database
*
* @access private
* @return void
*/
private function connect(){$this->conn = @mysql_connect($this->db_host,$this->db_user,$this->db_pwd);
if(!$this->conn){
//When show_error is turned on, print errors
If($this->show_error){
$this->show_error('Error message: Failed to connect to database!');
}
}if(!@mysql_select_db($this->db_database, $this->conn)){
//Failed to open database
If($this->show_error){
$this->show_error('Error message: Failed to open database!');
}
}if(!@mysql_query("set names $this->coding")){
//Failed to set encoding
If($this->show_error){
$this->show_error('Error message: Failed to set encoding!');
}
}
}/**
* Executable query, add, modify, delete, etc. any sql statement
*
* @access public
* @parameter string $sql sql statement
* @return resource Resource identifier
*/
public function query($sql){
$this->sql = $sql;
$result = mysql_query($this->sql, $this->conn);
if(!$result){
//Query execution failed, printing error
$this->show_error("Wrong sql statement:", $this->sql);
}else{
//Return resource identifier
Return $this->result = $result;
}
}/**
* Query all databases in mysql server
*
* @access public
* @return void
*/
public function show_databases(){
$this->query("show databases");
//Print the total number of databases
echo "Existing database:" . mysql_num_rows($this->result);
echo "
";
$i = 1;
//Loop to output the name of each database
while($row=mysql_fetch_array($this->result)){
echo "$i $row[database]" . "
";
$i++;
}
}/**
* Query all table names in the database
*
* @access public
* @return void
*/
public function show_tables(){
$this->query("show tables");
//Total number of printed tables
echo "The database {$this->db_database} has a total of" . mysql_num_rows($this->result) . "Table:";
echo "
";
//Construct array subscripts and loop out all table names in the database
$column_name = "tables_in_" . $this->db_database;
$i = 1;
//Loop to output the name of each table
while($row=mysql_fetch_array($this->result)){
echo "$i $row[$column_name]" . "
";
$i++;
}
}/**
* Get the record set, get the array-index and association
*
* @access public
* @return void
*/
public function fetch_array(){
Return mysql_fetch_array($this->result);
}/**
* Simplify select query statement
*
* @access public
* @parameter string $table Table name
* @parameter string $field Field name
* @return resource
*/
public function findall($table, $field = '*') {
Return $this->query("select $field from $table");
}/**
* Simplified delete query statement
*
* @access public
* @parameter string $table Table name
* @parameter string $condition Query condition
* @return resource
*/
public function delete($table, $condition) {
Return $this->query("delete from $table where $condition");
}/**
* Simplify insert statement
*
* @access public
* @parameter string $table Table name
* @parameter string $field Field name
* @parameter string $value Insert value
* @return resource
*/
public function insert($table, $field, $value) {
Return $this->query("insert into $table ($field) values ('$value')");
}/**
* Simplify update insert statement
*
* @access public
* @parameter string $table Table name
* @parameter string $update_content Updated content
* @parameter string $condition Condition
* @return resource
*/
public function update($table, $update_content, $condition) {
Return $this->query("update $table set $update_content where $condition");
}/**
* Get the id
generated by the previous insert operation *
* @access public
* @return integer
*/
public function insert_id() {
Return mysql_insert_id();
}/**
* Calculate the number of results in the result set
*
* @access public
* @return integer
*/
public function num_rows() {
Return mysql_num_rows($this->result);
}/**
* Query the number of fields and field information
*
* @access public
* @parameter string $table Table name
* @return void
*/
public function num_fields($table) {
$this->query("select * from $table");
echo "
";
//Print the number of fields
echo "Number of fields:" . $total = mysql_num_fields($this->result);
echo "";<br> //mysql_fetch_field() function obtains column information from the result set and returns it as an object. <br> for ($i = 0; $i < $total; $i++) {<br /> Print_r(mysql_fetch_field($this->result, $i));<br> }<br> echo "";
echo "
";
}/**
";
* Output sql statement error message
*
* @access public
* @parameter string $message Prompt message
* @return void
*/
Public function show_error($message='',$sql=''){
echo "
}
}
//How to use
$mysql = new mysql($dbhost, $dbuser, $dbpwd, $dbname, $coding);
?>