扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
直接调用就行了,不过可能你需要引用文件,以下是例子
创新互联长期为上千客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为江北企业提供专业的网站设计、成都网站建设,江北网站改版等技术服务。拥有十载丰富建站经验和众多成功案例,为您定制开发。
//文件conn.php,用于连接数据库
class
DB_Conn
{
}
//文件
db.php,
用于数据库操作,这个类必然需要使用数据库连接对象,因此引用conn.php
require_once
conn.php;
class
DB
{
}
//文件user.php
require_once
'db.php';
class
User
{
public
function
getUserById($id)
{
$conn
=
new
Db_Conn();
$db
=
new
Db();
}
}以上只是示意,如果文件不在一个目录下记得修改路径。而且,一般来说数据库对象应该包含连接数据库和数据操作的全部功能,不需要分别写在两个类里面。我觉得你对面向对象的理解还很浅薄,需要进一步累积经验。
本文实例讲述了PHP使用pdo连接access数据库并循环显示数据操作。分享给大家供大家参考,具体如下:
PDO连接与查询:
try
{
$conn
=
new
PDO("odbc:driver={microsoft
access
driver
(*.mdb)};
dbq=".realpath("MyDatabase.mdb"))
or
die("链接错误!");
//echo
"链接成功!";
}
catch(PDOException
$e){
echo
$e-getMessage();
}
$sql
=
"select
*
from
users";
1.
foreach()方法
foreach
($conn-query($sql)
as
$row)
{
$row["UserID"];
$row["UserName"];
$row["UserPassword"];
}
2.
while()方法
$rs
=
$conn-query($sql);
$rs-setFetchMode(PDO::FETCH_NUM);
while($row=$rs-fetch()){
$row[0];
$row[1];
$row[2];
}
php使用PDO抽象层获取查询结果,主要有三种方式:
(1)PDO::query()查询。
看下面这段php代码:
?php
//PDO::query()查询
$res
=
$db-query('select
*
from
user');
$res-setFetchMode(PDO::FETCH_NUM);
//数字索引方式
while
($row
=
$res-fetch()){
print_r($row);
}
?
(2)PDO-exec()处理sql
?php
//PDO-exec()处理sql
$db-setAttribute(PDO::ATTR_ERRMODE,
PDO::ERRMODE_EXCEPTION);
$res
=
$db-exec("insert
into
user(id,name)
values('','php点点通')");
echo
$res;
?
(3)PDO::prepare()预处理执行查询
?php
//PDO::prepare()预处理执行查询
$res
=
$db-prepare("select
*
from
user");
$res-execute();
while
($row
=
$res-fetchAll())
{
print_r($row);
}
?
setAttribute()
方法是设置属性,常用参数如下:
PDO::CASE_LOWER
--
强制列名是小写
PDO::CASE_NATURAL
--
列名按照原始的方式
PDO::CASE_UPPER
--
强制列名为大写
setFetchMode方法来设置获取结果集的返回值的类型,常用参数如下:
PDO::FETCH_ASSOC
--
关联数组形式
PDO::FETCH_NUM
--
数字索引数组形式
PDO::FETCH_BOTH
--
两者数组形式都有,这是默认的
PDO::FETCH_OBJ
--
按照对象的形式,类似于以前的
mysql_fetch_object()
对上面总结如下:
查询操作主要是PDO::query()、PDO::exec()、PDO::prepare()。
PDO-query()
—
处理一条SQL语句,并返回一个“PDOStatement”
PDO-exec()
—
处理一条SQL语句,并返回所影响的条目数
PDO::prepare()主要是预处理操作,需要通过$rs-execute()来执行预处理里面的SQL语句
最后介绍两个常用的函数:
(1)fetchColumn()获取指定记录里一个字段结果,默认是第一个字段!
?php
$res
=
$db-query('select
*
from
user');
//获取指定记录里第二个字段结果
$col
=
$res-fetchColumn(1);
echo
$col;
?
(2)fetchAll(),从一个结果集中获取数据,然后存放在关联数组中
?php
$res
=
$db-query('select
*
from
user');
$res_arr
=$res-fetchAll();
print_r($res_arr);
?
更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP基于pdo操作数据库技巧总结》、《php+Oracle数据库程序设计技巧总结》、《PHP+MongoDB数据库操作技巧大全》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。
您可能感兴趣的文章:PHP使用PDO连接ACCESS数据库PHP数据库链接类(PDO+Access)实例分享php中mysql连接方式PDO使用详解关于php连接mssql:pdo
odbc
sql
serverPhp中用PDO查询Mysql来避免SQL注入风险的方法php中在PDO中使用事务(Transaction)全新的PDO数据库操作类php版(仅适用Mysql)php使用pdo连接并查询sql数据库的方法php使用pdo连接mssql
server数据库实例PHP实现PDO的mysql数据库操作类
应该是你使用来变量的缘故
肯定和数据库里面执行的语句不完全一样
本文实例讲述了PHP基于单例模式实现的数据库操作基类。分享给大家供大家参考,具体如下:
配置文件:
?php
$db
=
array(
'host'='localhost',
'user'='root',
'password'='',
'database'='test',
)
?
php
数据库基类:
?php
class
db
{
public
$conn;
public
static
$sql;
public
static
$instance=null;
private
function
__construct(){
require_once('db.config.php');
$this-conn
=
mysql_connect($db['host'],$db['user'],$db['password']);
if(!mysql_select_db($db['database'],$this-conn)){
echo
"失败";
};
mysql_query('set
names
utf8',$this-conn);
}
public
static
function
getInstance(){
if(is_null(self::$instance)){
self::$instance
=
new
db;
}
return
self::$instance;
}
/**
*
查询数据库
*/
public
function
select($table,$condition=array(),$field
=
array()){
$where='';
if(!empty($condition)){
foreach($condition
as
$k=$v){
$where.=$k."='".$v."'
and
";
}
$where='where
'.$where
.'1=1';
}
$fieldstr
=
'';
if(!empty($field)){
foreach($field
as
$k=$v){
$fieldstr.=
$v.',';
}
$fieldstr
=
rtrim($fieldstr,',');
}else{
$fieldstr
=
'*';
}
self::$sql
=
"select
{$fieldstr}
from
{$table}
{$where}";
$result=mysql_query(self::$sql,$this-conn);
$resuleRow
=
array();
$i
=
0;
while($row=mysql_fetch_assoc($result)){
foreach($row
as
$k=$v){
$resuleRow[$i][$k]
=
$v;
}
$i++;
}
return
$resuleRow;
}
/**
*
添加一条记录
*/
public
function
insert($table,$data){
$values
=
'';
$datas
=
'';
foreach($data
as
$k=$v){
$values.=$k.',';
$datas.="'$v'".',';
}
$values
=
rtrim($values,',');
$datas
=
rtrim($datas,',');
self::$sql
=
"INSERT
INTO
{$table}
({$values})
VALUES
({$datas})";
if(mysql_query(self::$sql)){
return
mysql_insert_id();
}else{
return
false;
};
}
/**
*
修改一条记录
*/
public
function
update($table,$data,$condition=array()){
$where='';
if(!empty($condition)){
foreach($condition
as
$k=$v){
$where.=$k."='".$v."'
and
";
}
$where='where
'.$where
.'1=1';
}
$updatastr
=
'';
if(!empty($data)){
foreach($data
as
$k=$v){
$updatastr.=
$k."='".$v."',";
}
$updatastr
=
'set
'.rtrim($updatastr,',');
}
self::$sql
=
"update
{$table}
{$updatastr}
{$where}";
return
mysql_query(self::$sql);
}
/**
*
删除记录
*/
public
function
delete($table,$condition){
$where='';
if(!empty($condition)){
foreach($condition
as
$k=$v){
$where.=$k."='".$v."'
and
";
}
$where='where
'.$where
.'1=1';
}
self::$sql
=
"delete
from
{$table}
{$where}";
return
mysql_query(self::$sql);
}
public
static
function
getLastSql(){
echo
self::$sql;
}
}
$db
=
db::getInstance();
//$list
=
$db-select('demo',array('name'='tom','password'='ds'),array('name','password'));
//echo
$db-insert('demo',array('name'='脚本之家','password'='123'));
//echo
$db-update('demo',array("name"='xxx',"password"='123'),array('id'=1));
echo
$db-delete('demo',array('id'='2'));
db::getLastSql();
echo
"pre";
?
更多关于PHP操作数据库相关内容感兴趣的读者可查看本站专题:《php+mysql数据库操作入门教程》、《PHP基于pdo操作数据库技巧总结》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流