当前位置: 首页 > 图文教程 > 网络编程 > PHP > AJAX for PHP简单表数据查询实例

PHP
php 获取可变函数参数的函数
自动把纯文本转换成Web页面的php代码
JieqiCMS 杰奇1.5注册机php源码
php 正则表达式小结
ajax php 实现写入数据库
用php将任何格式视频转为flv的代码
用PHP读取flv文件的播放时间长度
PHP 内存缓存加速功能memcached安装与用法
php getsiteurl()函数
php中$_SERVER[PHP_SELF] 和 $_SERVER[SCRIPT_NAME]之间的区别
不要轻信 PHP_SELF的安全问题
php 遍历数据表数据并列表横向排列的代码
php 获取远程网页内容的函数
PHP 危险函数全解析
PHP 获取MSN好友列表的代码(2009-05-14测试通过)
PHP 裁剪图片成固定大小代码方法
封装一个PDO数据库操作类代码
php 从数据库提取二进制图片的处理代码
frename PHP 灵活文件命名函数 frename
PHP 5.0中多态性的实现方案浅析

AJAX for PHP简单表数据查询实例


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 144 ::
收藏到网摘: n/a

功能介绍:AJAX WebShop 3从Beta2开始支持PHP的开发了,AJAX WebShop集成了PHP5的开发环境,因此不需要额外安装配置PHP,本例将实现一个AJAX for PHP的简单数据查询操作,这个例子是单表操作,也可以实现主从表的数据查询。
一.数据表说明
例子采用了Access数据库,当然你也可以使用mysql 或其他类型数据库,数据库名称为:demo.mdb,表名为product,创建字段分别是PRODUCT_ID, PRODUCT_NAME, PRODUCT_PRICE, PRODUCT_AREA。
二.实现数据查询
首先启动AJAX WebShop 3,在File中选择“New Project”建立新工程。
图1
在弹出的New Project对话框中设置projectname 和web server本例中设置projectname为:php_example和设置web server为:PHP。如果要修改工程路径,请在Directory中设置要存放的路径。
图2
设置好New Project后,再打开“File”选择“New .PHP Service”,在弹出的对话框内目录输入子目录demo,设置”Class Name”为:simple_query;在ServiceType中选择“Query Data”点击“OK“后,向导将按默认模板生成php单表查询的代码。
图3
输入以下数据库连接及sql代码(demo.mdb文件放在当前代码目录下):$c.realpath($_SERVER['PATH_TRANSLATED'])."\demo.mdb";
$sql = "select * from product";
$sqlcount = "select count(*) from product";

分析testquery.php代码,主要的实现如下:
1. 循环数据结构,用addField向$xmlRequest填充字段(列): //fill metadata fields
复制代码 代码如下:
for ($i=1; $i<=$fields_count; $i++) {
$fieldname = odbc_field_name($result_id, $i);
$datatype = odbc_field_type($result_id, $i);
$xmlRequest->addField($fieldname, $datatype);
}

2. 循环结果集记录,调用Append() ,SetValue方法,向xmlrequest每一行对应字段填充数据: //fill data rows
复制代码 代码如下:
for ($i=0; $i<$record_count; $i++) {
odbc_fetch_row($result_id);
if($i>=$recNo && $i<$recNo+$maxRows) {
$xmlRequest->append();
for ($j=1; $j<=$fields_count; $j++) {
$xmlRequest->setValueByIndex($j-1, odbc_result($result_id, $j));
}
}
if($i>=$recNo+$maxRows) break;
}

3. 设置分页的相关参数,$xmlRequest->recNo是开始记录,$xmlRequest->maxRows是每页记录数,通过执行"select count(*) from product"得到$record_count记录总数:
复制代码 代码如下:
$sqlcount = "select count(*) from product";
$result_id = @odbc_do($connid, $sqlcount);
if($result_id==null)
throw new Exception($sqlcount);
odbc_fetch_row($result_id);
$record_count = odbc_result($result_id,1);
$xmlRequest->setRecordCount($record_count);
$recNo = $xmlRequest->recNo;
$maxRows = $xmlRequest->maxRows;
if($maxRows==-1) $maxRows = $record_count;
后台数据访问类建立好后,在“File”中选择“New Page”打开“New Page”对话框在“File Name”中设置页面名称,如本例“simple.htm”点击ok完成设置。
未完)
原文出自http://cn.joyistar.com