MYSQL常用操作函数的封装

1.mysql常用函数封装文件:mysql.func.php

<?php
/**
* 连接MYSQL函数
* @param string $host
* @param string $username
* @param string $password
* @param string $dbName
* @param string $charset
* @return resource
*/
function connect($host,$username,$password,$dbName,$charset){
//连接mysql
$link=@mysql_connect($host,$username,$password) or die ('数据库连接失败<br/>ERROR '.mysql_errno().':'.mysql_error());
//设置字符集
mysql_set_charset($charset);
//打开指定的数据库
mysql_select_db($dbName)or die('指定的数据库打开失败');
return $link; } /**
* 连接MYSQL函数,需要在连接的时候传递一个数组
* @param array $config
* @return resource
*/
function connect1 ($config){
//连接mysql
$link=@mysql_connect($config['host'],$config['username'],$config['password']) or die ('数据库连接失败<br/>ERROR '.mysql_errno().':'.mysql_error());
//设置字符集
mysql_set_charset($config['charset']);
//打开指定的数据库
mysql_select_db($config['dbName']) or die('指定的数据库打开失败');
return $link;
} /**建议使用该函数
* 连接MYSQL函数,通过常量的形式来连接数据库
* 自定义配置文件,配置文件中自定义常量,包含需要使用的信息
* @return resource
*/
function connect2 (){
//连接mysql
$link=@mysql_connect(DB_HOST,DB_USER,DB_PWD) or die ('数据库连接失败<br/>ERROR '.mysql_errno().':'.mysql_error());
//设置字符集
mysql_set_charset(DB_CHARSET);
//打开指定的数据库
mysql_select_db(DB_DBNAME) or die('指定的数据库打开失败');
return $link;
} /* array(
'username'=>'king',
'password'=>'123123',
'email'=>'dh@qq.com'
) */ /**
* 插入记录的操作
* @param array $array
* @param string $table
* @return boolean
*/
function insert($array,$table){
$keys=join(',',array_keys($array));
$values="'".join("','", array_values($array))."'";
$sql="insert {$table}({$keys}) VALUES ({$values})";
$res=mysql_query($sql);
if($res){
return mysql_insert_id();
}else{
return false;
}
} /**
* MYSQL更新操作
* @param array $array
* @param string $table
* @param string $where
* @return number|boolean
*/
function update($array,$table,$where=null){
foreach ($array as $key=>$val){
$sets.=$key."='".$val."',";
}
$sets=rtrim($sets,','); //去掉SQL里的最后一个逗号
$where=$where==null?'':' WHERE '.$where;
$sql="UPDATE {$table} SET {$sets} {$where}";
$res=mysql_query($sql);
if ($res){
return mysql_affected_rows();
}else {
return false;
}
} /**
* 删除记录的操作
* @param string $table
* @param string $where
* @return number|boolean
*/
function delete($table,$where=null){
$where=$where==null?'':' WHERE '.$where;
$sql="DELETE FROM {$table}{$where}";
$res=mysql_query($sql);
if ($res){
return mysql_affected_rows();
}else {
return false;
}
} /**
* 查询一条记录
* @param string $sql
* @param string $result_type
* @return boolean
*/
function fetchOne($sql,$result_type=MYSQL_ASSOC){
$result=mysql_query($sql);
if ($result && mysql_num_rows($result)>0){
return mysql_fetch_array($result,$result_type);
}else {
return false;
}
} /**
* 得到表中的所有记录
* @param string $sql
* @param string $result_type
* @return boolean
*/
function fetchAll($sql,$result_type=MYSQL_ASSOC){
$result=mysql_query($sql);
if ($result && mysql_num_rows($result)>0){
while ($row=mysql_fetch_array($result,$result_type)){
$rows[]=$row;
}
return $rows;
}else {
return false;
}
} /**取得结果集中的记录的条数
* @param string $sql
* @return number|boolean
*/
function getTotalRows($sql){
$result=mysql_query($sql);
if($result){
return mysql_num_rows($result);
}else {
return false;
} } /**释放结果集
* @param resource $result
* @return boolean
*/
function freeResult($result){
return mysql_free_result($result);
} /**断开MYSQL
* @param resource $link
* @return boolean
*/
function close($link=null){
return mysql_close($link);
} /**得到客户端的信息
* @return string
*/
function getClintInfo(){
return mysql_get_client_info();
} /**得到MYSQL服务器端的信息
* @return string
*/
function getServerInfo($link=null){
return mysql_get_server_info($link);
} /**得到主机的信息
* @return string
*/
function getHostInfo($link=null){
return mysql_get_host_info($link);
} /**得到协议信息
* @return string
*/
function getProtoInfo($link=null){
return mysql_get_proto_info($link);
}

2. 数据库配置文件:config.php

<?php
define('DB_HOST', 'localhost');
define('DB_USER', 'root');
define('DB_PWD', '');
define('DB_CHARSET', 'UTF8');
define('DB_DBNAME', 'homework');

3. mysql函数使用(测试)文件:testMysqlFunc.php

<?php
header('content-type:text/html;charset=utf-8');
require_once 'mysql.func.php';
require_once 'config.php';
//连接
/* $host='localhost';
$username='root';
$password='';
$charset='UTF8';
$dbName='homework';
$link=connect($host, $username, $password, $dbName, $charset);
var_dump($link); */ /* $config=array(
'host'=>'localhost',
'username'=>'root',
'password'=>'',
'charset'=>'UTF8',
'dbName'=>'homework'
);
$link=connect1($config);
var_dump($link); */ $link=connect2();
//var_dump($link); $array=array(
'username'=>'king1',
'password'=>'1231231',
'email'=>'dh1@qq.com',
'age'=>'12',
'sex'=>'女'
); // $table='users2';
// $res=insert($array, $table);
// var_dump($res); // $table='users2';
// $res=update($array, $table,'id=3');
// var_dump($res); // $table='users2';
// $res=delete($table,'id=1');
// var_dump($res); // $sql='SELECT * FROM users2 WHERE id=1 ';
// $row=fetchOne($sql);
// var_dump($row); $sql='SELECT * FROM users2';
$rows=fetchAll($sql);
var_dump($rows);
上一篇:MHA的在线切换后的一些总结(mha方案来自网络)


下一篇:2018-2019-20175302实验二《Java面向对象程序设计》实验报告