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


Posted in PHP onJanuary 02, 2007

功能介绍: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

PHP 相关文章推荐
用PHP的ob_start();控制您的浏览器cache!
Nov 25 PHP
php巧获服务器端信息
Dec 06 PHP
php 随机生成10位字符代码
Mar 26 PHP
php操作sqlserver关于时间日期读取的小小见解
Nov 29 PHP
thinkPHP的Html模板标签使用方法
Nov 13 PHP
Linux Apache PHP Oracle 安装配置(具体操作步骤)
Jun 17 PHP
SESSION存放在数据库用法实例
Aug 08 PHP
php封装的mysqli类完整实例
Oct 18 PHP
完美解决php 导出excle的.csv格式的数据时乱码问题
Feb 18 PHP
php菜单/评论数据递归分级算法的实现方法
Aug 01 PHP
laravel 解决groupBy时出现的错误 isn't in Group By问题
Oct 17 PHP
聊聊 PHP 8 新特性 Attributes
Aug 19 PHP
[原创]PHP中通过ADODB库实现调用Access数据库之修正版本
Dec 31 #PHP
PHP中通过ADO调用Access数据库的方法测试不通过
Dec 31 #PHP
刚才在简化php的库,结果发现很多东西
Dec 31 #PHP
smarty+adodb+部分自定义类的php开发模式
Dec 31 #PHP
adodb与adodb_lite之比较
Dec 31 #PHP
PHP获得用户使用的代理服务器ip即真实ip
Dec 31 #PHP
使用adodb lite解决问题
Dec 31 #PHP
You might like
PHP初学者头疼问题总结
2006/10/09 PHP
谈谈PHP语法(5)
2006/10/09 PHP
PHP中PDO基础教程 入门级
2011/09/04 PHP
多个PHP中文字符串截取函数
2013/11/12 PHP
PHP SPL标准库中的常用函数介绍
2015/05/11 PHP
ExtJS 2.0实用简明教程 之Ext类库简介
2009/04/29 Javascript
Prototype String对象 学习
2009/07/19 Javascript
Nodejs中读取中文文件编码问题、发送邮件和定时任务实例
2015/01/01 NodeJs
js函数内变量的作用域分析
2015/01/12 Javascript
JavaScript实现按照指定长度为数字前面补零输出的方法
2015/03/19 Javascript
jQuery+json实现的简易Ajax调用实例
2015/12/14 Javascript
js实现非常棒的弹出div
2016/10/06 Javascript
如何实现星星评价(jquery.raty.js插件)
2016/12/21 Javascript
JavaScript日期对象(Date)基本用法示例
2017/01/18 Javascript
jQuery使用DataTable实现删除数据后重新加载功能
2017/02/27 Javascript
react-native 封装选择弹出框示例(试用ios&amp;android)
2017/07/11 Javascript
详解VUE2.X过滤器的使用方法
2018/01/11 Javascript
vue项目中实现缓存的最佳方案详解
2019/07/11 Javascript
mapboxgl区划标签避让不遮盖实现的代码详解
2020/07/01 Javascript
对于Python的Django框架使用的一些实用建议
2015/04/03 Python
python matplotlib坐标轴设置的方法
2017/12/05 Python
Python实现控制台中的进度条功能代码
2017/12/22 Python
Python单元测试简单示例
2018/07/03 Python
对Django中的权限和分组管理实例讲解
2019/08/16 Python
PyCharm GUI界面开发和exe文件生成的实现
2020/03/04 Python
Python使用pyyaml模块处理yaml数据
2020/04/14 Python
Python绘图实现台风路径可视化代码实例
2020/10/23 Python
检测用户浏览器是否支持CSS3的方法
2009/08/29 HTML / CSS
布局和排版教程 纯css3实现图片三角形排列
2014/10/17 HTML / CSS
波兰灯具、照明和LED购物网站:Lampy.pl
2019/03/11 全球购物
英国奢侈品牌时尚购物平台:Farfetch(支持中文)
2020/02/18 全球购物
经典公益广告词
2014/03/13 职场文书
公共场所禁烟倡议书
2014/08/30 职场文书
大三学年自我鉴定范文(3篇)
2014/09/28 职场文书
圣诞晚会主持词
2015/07/01 职场文书
2016新教师岗前培训心得体会
2016/01/08 职场文书