我也刚刚学PHP,正在研究中,虽然你只给10分........
首先,将代码保存到一个文件,如:mysql.class.php
其次,在一个常用的文件里调用:比如头部文件header.php,因为我放在根目录所以用下面方式导入其他文件:
require dirname(__FILE__) . 'include/config.php';
//导入类文件
require dirname(__FILE__) . 'include/mysql.class.php';
//定义一个类及初始化数据库类
$db = new mysql($db_host, $db_user, $db_pass, $db_name);
$db_host = $db_user = $db_pass = $db_name = NULL;
然后,在test.php文件调用:
require_once dirname(__FILE__) . '/header.php';
使用方法:
$sql = "读取表";
$res = $db-query($sql);
$info = array();//定义数组
while($row=$db-fetchRow($res))
{
$arr['id'] = $row['id'];
$arr['title'] = $row['title'];
$info[] = $arr;
}
可以在显示的地方用:
foreach($info as $i)
echo $i['title']."br /";
或是直接使用while
还用另一种调用方式:
$here_area = $db-getRow("select areaid,areaname from {$table}area where areaid='$areaid'");
$here[] = array('name'=$here_area['areaname'],'id'=$here_area['areaid']);
测试通过,因为我正在使用.....................................
config.php代码:
php
$db_host = "localhost";
$db_name = "test";
$db_user = "root";
$db_pass = "";
$table = "mini_";
$dbcharset = "gbk";
mysql.class.php代码:
class mysql
var $link = NULL;
function __construct($dbhost, $dbuser, $dbpw, $dbname = '', $pconnect = 0, $quiet = 0)
//自动执行时调用mysql函数
$this-mysql($dbhost, $dbuser, $dbpw, $dbname, $pconnect, $quiet);
function mysql($dbhost, $dbuser, $dbpw, $dbname = '', $pconnect = 0, $quiet = 0)
if ($quiet)
$this-connect($dbhost, $dbuser, $dbpw, $dbname, $pconnect, $quiet);
else
$this-settings = array(
'dbhost' = $dbhost,
'dbuser' = $dbuser,
'dbpw' = $dbpw,
'dbname' = $dbname,
'charset' = $charset,
'pconnect' = $pconnect
);
function connect($dbhost, $dbuser, $dbpw, $dbname = '', $pconnect = 0, $quiet = 0)
global $dbcharset;
if ($pconnect)
if (!($this-link = @mysql_pconnect($dbhost, $dbuser, $dbpw)))
if (!$quiet)
$this-ErrorMsg("Can't pConnect MySQL Server($dbhost)!");
return false;
$this-link = @mysql_connect($dbhost, $dbuser, $dbpw, true);
$this-link = @mysql_connect($dbhost, $dbuser, $dbpw);
mt_srand((double)microtime() * 1000000);
if (!$this-link)
$this-ErrorMsg("Can't Connect MySQL Server($dbhost)!");
$this-version = mysql_get_server_info($this-link);
if ($dbcharset != 'latin1')
mysql_query("SET character_set_connection=$dbcharset, character_set_results=$dbcharset, character_set_client=binary", $this-link);
mysql_query("SET sql_mode=''", $this-link);
if ($dbname)
if (mysql_select_db($dbname, $this-link) === false )
$this-ErrorMsg("Can't select MySQL database($dbname)!");
return true;
function query($sql, $type = '')
if ($this-link === NULL)
$this-connect($this-settings['dbhost'], $this-settings['dbuser'], $this-settings['dbpw'], $this-settings['dbname'], $this-settings['charset'], $this-settings['pconnect']);
$this-settings = array();
$this-queryLog[] = $sql;
if ($this-queryTime == '')
$this-queryTime = microtime(true);
$this-queryTime = microtime();
if (!($query = mysql_query($sql, $this-link)) $type != 'SILENT')
$this-error_message[]['message'] = 'MySQL Query Error';
$this-error_message[]['sql'] = $sql;
$this-error_message[]['error'] = mysql_error($this-link);
$this-error_message[]['errno'] = mysql_errno($this-link);
$this-ErrorMsg();
return $query;
function affected_rows()
return mysql_affected_rows($this-link);
function num_fields($query)
return mysql_num_fields($query);
function error()
return mysql_error($this-link);
function errno()
return mysql_errno($this-link);
function num_rows($query)
return mysql_num_rows($query);
function insert_id()
return mysql_insert_id($this-link);
function fetchRow($query)
return mysql_fetch_assoc($query);
function fetcharray($query)
return mysql_fetch_array($query);
function version()
return $this-version;
function close()
return mysql_close($this-link);
function ErrorMsg($message = '', $sql = '')
if ($message)
echo "$message\n\n";
echo "bMySQL server error report:";
print_r($this-error_message);
exit;
function getCol($sql)
$res = $this-query($sql);
if ($res !== false)
$arr = array();
while ($row = mysql_fetch_row($res))
$arr[] = $row[0];
return $arr;
function getOne($sql, $limited = false)
if ($limited == true)
$sql = trim($sql . ' LIMIT 1');
$row = mysql_fetch_row($res);
if ($row !== false)
return $row[0];
return '';
function getAll($sql)
while ($row = mysql_fetch_assoc($res))
$arr[] = $row;
//使用: getRow($sql,true) 如果有true那值是 limit 1,读取一条信息
function getRow($sql, $limited = false)
return mysql_fetch_assoc($res);
PHP链接数据库有几种方式
mysqli:
php?
$servername?=?"localhost";?
$username?=?"username";?
$password?=?"password";?
//?创建连接?
$conn?=?new?mysqli($servername,?$username,?$password);?
//?检测连接?
if?($conn-connect_error)?{
die("连接失败:?"?.?$conn-connect_error);?
}?
echo?"连接成功";?
也可以使用PDO进行链接,前提是你必须在php.ini中开启PDO:
$servername?=?"localhost";
$username?=?"username";
$password?=?"password";
try?{
$conn?=?new?PDO("mysql:host=$servername;dbname=myDB",?$username,?$password);
catch(PDOException?$e)
echo?$e-getMessage();
建议使用PDO,功能更加强大,兼容各种数据库
php链接mysql必备条件:
已安装mysql数据库;
检查php环境是否已开启mysql扩展(一般情况下是开启的);
检查方法:a.使用phpinfo();函数,看有没有mysql项;b.打开php.ini文件,检查php_mysql.dll前分号是否已取掉.
php链接代码如下:
//设置编码格式
//定义数据库主机地址
$host="localhost";
//定义mysql数据库登录用户名
$user="root";
//定义mysql数据库登录密码
$pwd="";
//链接数据库
$conn = mysql_connect($host,$user,$pwd);
//对连接进行判断
if(!$conn){
die("数据库连接失败!".mysql_errno());
}else{
echo "数据库连接成功!";
用ASP连接各种数据库的方法
第一段:ASP的对象存取数据库方法
在ASP中,用来存取数据库的对象统称ADO(Active Data Objects),主要含有三种对象:Connection、Recordset 、Command
Connection:负责打开或连接数据
Recordset:负责存取数据表
Command:负责对数据库执行行动查询命令
第二段:连接各数据库的驱动程序
连接各数据库可以使用驱动程序,也可以使用数据源,不过我建议大家使用驱动程序,因为使用驱动程序非常方便、简单,而使用数据源比较麻烦.
ODBC链接
适合数据库类型 链接方式
access "Driver={microsoft access driver(*.mdb)};dbq=*.mdb;uid=admin;pwd=pass;"
Oracle "Driver={microsoft odbc for oracle};server=oraclesever.world;uid=admin;pwd=pass;"
MSSQL server "Driver={sql server};server=servername;database=dbname;uid=sa;pwd=pass;"
MS text "Driver={microsoft text driver(*.txt; *.csv)};dbq=-----;extensions=asc,csv,tab,txt;Persist SecurityInfo=false;"
Visual Foxpro "Driver={microsoft Visual Foxpro driver};sourcetype=DBC;sourceDB=*.dbc;Exclusive=No;"
OLEDB链接
适合的数据库类型 链接方式
Oracle "Provider=OraOLEDB.Oracle;data source=dbname;user id=admin;password=pass;"
MS SQL Server "Provider=SQLOLEDB;data source=machinename;initial catalog=dbname;userid=sa;password=pass;"
而我们在一般情况下使用Access的数据库比较多,今天这一节我建议大家连接Access数据库使用下面的方法:
dim conn
set conn = server.createobject("adodb.connection")
其中../db/bbs.mdb是你的数据库存放的相对路径!如果你的数据库和ASP文件在同一目录下,你只要这样写就可以了:
有许多初学者在遇到数据库连接时总是会出问题,然而使用上面的驱动程序只要你的数据库路径选对了就不会出问题了.
以上就是土嘎嘎小编为大家整理的php数据库链接类相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!