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学习教程之第2天
Jun 15 PHP
php 删除记录实现代码
Mar 12 PHP
PHP数组排序函数合集 以及它们之间的联系分析
Jun 27 PHP
PHP输出当前进程所有变量/常量/模块/函数/类的示例
Nov 07 PHP
Yii2框架引用bootstrap中日期插件yii2-date-picker的方法
Jan 09 PHP
PHP编写文件多服务器同步程序
Jul 02 PHP
PHP使用DOM和simplexml读取xml文档的方法示例
Feb 08 PHP
php检查函数必传参数是否存在的实例详解
Aug 28 PHP
PHP实现权限管理功能示例
Sep 22 PHP
PHP有序表查找之插值查找算法示例
Feb 10 PHP
Yii2.0 RESTful API 基础配置教程详解
Dec 26 PHP
Laravel 队列使用的实现
Jan 08 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
详解js异步文件加载器
2016/01/24 PHP
设定php简写功能的方法
2019/11/28 PHP
PHP7 foreach() 函数修改
2021/03/09 PHP
javascript RadioButtonList获取选中值
2009/04/09 Javascript
js拦截alert对话框另类应用
2013/01/16 Javascript
JS测试显示屏分辨率以及屏幕尺寸的方法
2013/11/22 Javascript
jQuery内容过滤选择器用法分析
2015/02/10 Javascript
浅谈jQuery中setInterval()方法
2015/07/07 Javascript
easyui Draggable组件实现拖动效果
2015/08/19 Javascript
js获取及修改网页背景色和字体色的方法
2015/12/29 Javascript
基于JQuery的$.ajax方法进行异步请求导致页面闪烁的解决办法
2016/05/10 Javascript
HTML5 实现的一个俄罗斯方块实例代码
2016/09/19 Javascript
Bootstrap表格使用方法详解
2017/02/17 Javascript
微信小程序图片横向左右滑动案例
2017/05/19 Javascript
微信小程序wx.request拦截器使用详解
2019/07/09 Javascript
Javascript中的this,bind和that使用实例
2019/12/05 Javascript
vue-cli或vue项目利用HBuilder打包成移动端app操作
2020/07/29 Javascript
vue 图片裁剪上传组件的实现
2020/11/12 Javascript
基于python实现百度翻译功能
2019/05/09 Python
python从入门到精通 windows安装python图文教程
2019/05/18 Python
python实现简单五子棋游戏
2019/06/18 Python
详解pandas获取Dataframe元素值的几种方法
2020/06/14 Python
html5中地理位置定位api接口开发应用小结
2013/01/04 HTML / CSS
中国电视购物:快乐购
2017/02/04 全球购物
新电JAVA笔试题目
2014/08/31 面试题
浙大网新C/C++面试解惑
2015/05/27 面试题
高级人员简历的自我评价分享
2013/11/03 职场文书
大一期末自我鉴定
2013/12/13 职场文书
工作失职检讨书范文
2014/01/16 职场文书
幼儿园教师工作制度
2014/01/22 职场文书
汽车销售员如何做职业生涯规划
2014/02/16 职场文书
奖学金感谢信
2015/01/21 职场文书
企业计划生育责任书
2015/05/09 职场文书
2015年社区教育工作总结
2015/05/13 职场文书
如何理解Vue简单状态管理之store模式
2021/05/15 Vue.js
SQL中的连接查询详解
2022/06/21 SQL Server