phppdo导出数据 php导出文件

PHP使用pdo连接access数据库并循环显示数据操作示例

本文实例讲述了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 使用pdo链接数据库 怎么查询数据库中的内容。查询出来之后要怎么显示指定的内容。例如,id号,或者na

?php

header('content-type:text/html;charset=utf-8');

$dsn = 'mysql:dbname=m-test;host=localhost';

$user = 'root';//数据库用户名

$passwd = '';//数据库密码

try {

$pdo = new pdo($dsn, $user, $passwd);

$pdo-query('set names utf8');//设置字符集

$result = $pdo-query('select * from user');//查询数据库

foreach ($result as $row) {

echo $row['id'];//输出 id 号

echo ':';

echo $row['name'];//输出 name

echo 'br /';

}

} catch (pdoexception $e) {

echo $e-getmessage();//错误信息

}

?

php pdo多条数据怎么转换为json

不论几条数据,终究在php中都是数组,然后通过echo json_encode(php数组变量);直接输出该函数就行,就是一段json数据

Php中的pdo是什么意思啊?举个例子指点迷津??!

就是操作数据库的方法,

pdo就是把操作数据库的函数封装成一个pdo类,其间做了安全验证而已。

在使用PDO之前首先要设置PHP.INI文件,使PHP支持PDO,因为PHP5默认是不支持的。在PHP安装目录下找到PHP.INI文件,打开并搜索extension=php_pdo.dll 和 extension=php_pdo_mysql.dll,将前面的分号(;)去掉,重启apache即可。

接下来我们就开始写PHP代码了,首先是连接数据库,看下面的例子:

!--?php

define('DB_NAME', 'pdo_test');

define('DB_USER', 'root');

define('DB_PASSWORD', '');

define('DB_HOST', 'localhost');

define('DB_CHARSET', 'utf8');

try {

$DBH = new PDO('mysql:host='.DB_HOST.';dbname='.DB_NAME, DB_USER, DB_PASSWORD);

$DBH---exec('SET CHARACTER SET '.DB_CHARSET);

$DBH-exec('SET NAMES '.DB_CHARSET);

} catch (PDOException $e) {

print "Error!: " . $e-getMessage() . "br";

die();

}

?

连接成功后,我们需要对数据库中的数据进行增删改查操作,这里主要用到exec和query两个函数。

示例:

!--?php

//增加数据

$sql_insert = 'Insert INTO wp_options(blog_id,option_name,option_value,autoload) VALUES (0,'.time().rand(1,100).','.time().rand(1,100).',\'no\')';

$back = $DBH---exec($sql_insert); //返回 bool 的true or fal

$lastInsertId = $DBH-lastInsertId();

//删除数据

$sql_delete = 'Delete FROM wp_options Where option_id='.$lastInsertId;

$back = $DBH-exec($sql_delete); //返回 bool 的true or fal

$lastInsertId = $DBH-lastInsertId();

//更新数据

$sql_update = 'Update wp_options SET option_name = \''.time().rand(1,100).'\' Where option_id='.$lastInsertId;

$lastUpdateId = $DBH-lastInsertId(); //返回的对应的操作的id

//查询数据

$sql_select = 'Select option_id FROM wp_options orDER BY option_id DESC LIMIT 4 ';

$back = $DBH-query($sql_select); //返回一个对象 这个对象可以用foreach 直接遍历循环 循环的为查询的结果集

$back = $DBH-query($sql_select)-fetch(); //返回一条数据结果 这个对象可以用foreach 直接遍历循环 循环的为查询的结果集

$back = $DBH-query($sql_select)-fetchAll(); //返回一个数组 这个对象可以用foreach 直接遍历循环 循环的为查询的结果集

$back = $DBH-query($sql_select)-fetchColumn(0); //返回一个字段字符串,这个字符串是返回的记录的第一条记录的第一个字段

?

到这里,PDO的基本操作基本上结束了。对于一般的企业网站,小型的管理系统基本上能满足了,但是,如果我们开发大型网站或者逻辑较复杂的管理系统,仅仅靠数据的读写是远远不够的,我们可能还需要对数据库的存储过程、事务等对象进行操作,下面我们继续看看用PDO是如何实现的。如果还有更多问题可以去后盾网论坛问题求助专区,希望我的回答对你有帮助!

如何用pdo读取数据生成静态页面

工具/原料

电脑

WAMPServer(Window+Apache+MySQL+PHP集成开发环境,大家可以在网上下载)

方法/步骤

PDO配置。打开php.ini配置文件,找到下图所示的配置信息,去掉要启用的PDO前面的“#”号即可。另外一种方式是直接在启动的wampserver中找到php扩展中的php_pdo_db.lib选项,重启wampserver服务器即可。

如何利用PDO连接数据库。利用下面这条简单的语句即可连接数据库

$pdo = newPDO("mysql:host=localhost;dbname=php100","root",“ ");

其中具体参数介绍如下图所示:

PDO中常用的函数及其解释如下。

PDO::query()主要是用于有记录结果返回的操作,特别是SELECT操作

PDO::exec()主要是针对没有结果集合返回的操作,如INSERT、UPDATE等操作

PDO::lastInsertId() 返回上次插入操作,主键列类型是自增的最后的自增ID

PDOStatement::fetch()是用来获取一条记录

PDOStatement::fetchAll()是获取所有记录集到一个中

下面通过一个简单的php代码示例来具体介绍如何使用PDO进行数据库操作。

?php

//连接数据库

$pdo = new PDO("mysql:host=localhost; dbname=member", "root","");

//在表user_list中插入数据

$pdo-exec("insert into user_list(uid, m_id, username, password) values(null,'3','testpdo','testpdo')");

//使用查询语句

$sr = $pdo-query("select * from user_list");

//将查询的结果循环输出显示

while($row=$sr-fetch()){

print_r($row);

}

?

php 如何从数据里选择所需要信息然后生成csv文件自动保存在指定的路径?(不提示保存,自动)

命令行模式下,或者web模式下保存的路径在服务器中,可以达到你的要求(有该路径的权限即可)

如果是在web模式下,不提示直接保存到访客的电脑中的某个位置,是不可以的。

web模式保存到客户端,只能通过下载,由用户指定,或保存到默认的下载目录。

以下是代码示例:

$dsn = 'mysql:dbname=testdb;host=127.0.0.1';

$user = 'dbuser';

$password = 'dbpass';

//连接数据库 pdo

try {

$dbh = new PDO($dsn, $user, $password, array(PDO::MYSQL_ATTR_INIT_COMMAND = "SET NAMES 'UTF8'"));

} catch (PDOException $e) {

echo 'Connection failed: ' . $e-getMessage();exit;

}

//读取数据, 具体sql你根据情况修改

$stat = $dbh-prepare('SELECT * FROM `table` WHERE `id`0 LIMIT 100;');

$stat-execute();

$result = $stat-fetchAll(PDO::FETCH_ASSOC);

//创建csv文件并打开文件指针

$filepath='file.csv';

$fp = fopen($filepath, 'w');

//写入数据

foreach($result as $i=$row){

//写入标题行

if($i==0){

fputcsv($fp, array_keys($row));

}

fputcsv($fp, $row);

}

//关闭文件指针

fclose($fp);

//把文件输出到下载

$file = fopen($filepath,"r"); // 打开文件

$size=filesize($filepath);

Header("Content-type: application/octet-stream");

Header("Accept-Ranges: bytes");

Header("Accept-Length: ".$size);

Header("Content-Disposition: attachment; filename=download.csv");

echo fread($file,$size);

fclose($file);

相关知识点:

PHP: fputcsv

PHP:PDO

数据库查询的时候只返回列名,防止列出现重复,csv里会有重复的数据


分享文章:phppdo导出数据 php导出文件
链接URL:http://ybzwz.com/article/hppioc.html