- 浏览: 442733 次
- 性别:
- 来自: 茂名
文章分类
最新评论
-
zenmshuo:
不错不错,总结的很详细,不知道这个控件和FlexGrid比起来 ...
jQuery EasyUI教程之datagrid应用(三) -
我是你们的爹:
文章里太多错误了,容易误导新手
jQuery EasyUI教程之datagrid应用(三) -
我是你们的爹:
...
jQuery EasyUI教程之datagrid应用(一) -
zhehen123:
你傻啊,json_decode后面跟一个参数就可以转成普通数组 ...
如何将PHP对象数组转换成普通数组? -
lai3221:
hegz,为什么做了没有任何效果呢?
jQuery EasyUI教程之datagrid应用(二)
这个帖子虽然比较旧,但仔细找找,你很可能挖到金矿也不一定。
-----------x----------x---------x----->美丽分割线<-----x---------x----------x-------
这个帖子用来发布 1.0.70 的开发
进度情况。
1.0.70 beta 版已经发布,所有示例
均可正常运行
。
【SVN 仓库地址】
如果希望获得开发中的 1.0.70 代码
,请使用下面的 SVN 地址:
svn
://svn.fleaphp.org/branch/1.0.70-dev/
【2007-05-15】
转眼间,一个月就过去了,这段时间因为工作繁忙,和编写文档
,所以 FleaPHP
的代码没有什么大的改动,不过还是提供了一些新特征:
- 增加 FLEA_Session_Db 类,提供将 session
保存到数据库
的能力
- FLEA_Db_TableDataGateway 关联查询
加入对 limit 参数
的支持
- FLEA_Db_TableDataGateway 增加了
saveRowset()、createRowset()、updateRowset() 和 replaceRowset() 方法
- 新增的 FLEA_Db_TableDataGateway::findAllByPkvs()
可以查找以数组形式指定的主键值对应记录
- FLEA_Db_TableDataGateway 构造函数
现在支持直接指定 primaryKey 属性
- 修正 FLEA_Db_TableDataGateway::findAllByPkvs() 产生无效查询条件
的问题
- 修正 FLEA_Db_TableDataGateway::updateByConditions() 总是返回 true
的问题,感谢 一地风飞 报告此问题
- 修正 mysql 驱动 nextId() 在 _seq 表为空时不能返回键值的问题
- FLEA_Controller
_Action
增加了
__setDispatcher() 方法,以便设置
控制器
使用的调度器对象
- 增加 FLEA_Controller_Action:
_dispatcher
- 简化 FLEA_Controller_Action 和 FLEA_Dispatcher_Simple 对请求参数的处理
- 修正调用 FLEA_Controller_Action::_forward() 会导致出错的问题
- 修正在 FLEA_Controller_Action 继承类构造函数中调用
$this->_getDispatcher() 无法获得调度器对象的问题
- 增加了 FLEA_Dispatcher_Action::getUserRoles()
- FLEA_Rbac
_UsersManager 增加了
updatePasswordById() 方法,以便更新指定 ID 的用户
的密码
- FLEA_Rbac_UsersManager 的 find 系列方法增加了 $fields 参数,以便指定要获取的字段
- 针对 CGI 模式
安装的 PHP
,调整了 url
() 函数
- url() 现在支持一个新的参数:$bootstrap。该参数用于指定以什么文件
作为 URL 的入口文件
- 新增的 detect_uri() 函数用于获得当前请求的 URL 地址
- 修正 encode_url_args() 生成的 url 多了一个 & 的问题
- 新增的应用
程序
设置 urlParameterPairStyle
指示在 PATHINFO 和 REWRITE 模式下,用什么符号作为 URL 参数名和参数值的连接字符,默认设置为 ':'
- FLEA::getSingleton() 的细微修改
- FLEA_Helper
_Image::crop() 的
$noOverflow 参数改名为 $nocut
- FLEA_Helper_SendFile::sendFile() 现在会输出缓存
标志
- Smarty 扩展的 parse_str 插件
现在支持以 | 符号分割字符串,方便在页面
中使用
- 修正 FLEA_Log 报错的问题,感谢 zhex 报告此问题
- 修正 WebControls 中 __baseCtlCheckboxOrRadioGroup() 对 caption
判断不当的问题,感谢 hho2002 报告此问题
- 修正了应用程序设置 displaySources = false 没有起作用的问题
- 将 FLEA/Db/TableDataGateway.php 和 MVC.package.php
文件,方便维护。以后通过“应用程序部署向导”来打包应用程序和 Flea
PHP 框架
文件,从而提高运行性能
FLEA_Session_Db 是一个新组件,用于将 session 保存到数据
库中。开发者可以很方便的扩展这个组件,以便在保存
session 时保存更多的信息。其他更新主要集中于 bug
修复和功能
增强,让 FleaPHP 变得更稳定、更好用。
预计本月底发布正式版本和配套的文档,目前我们正在为了这一目标紧张工作。
【2007-04-10】
这几天的更新集中于修复 1.0.70 beta 版发布以来发现的一些 bug,并进一步优化性能。
其中 FLEA_Ajax 现在支持以 jQuery
的选择符来确定发起 Ajax 调用的控件
。同时,调用 registerEvent()
注册 ajax 事件时,控件名必须以 jQuery 选择符的形式提供。例如要指定名为 username 的输入框,就用
“#username”。具体可以参考 FleaPHP Ajax 示例程序的代码。
- FLEA 基础类细微调整,避免在 __autoload() 中调用 loadClass() 时发生递归调用
- 修改了几处调用 class_exists() 的地方,以避免和 __autoload() 中调用
FLEA::loadClass() 发生冲突
- FLEA::getFilePath() 的性能优化
- 修改 FLEA.php 确保不会出现 log_message() 和 _T() 未定义
的问题
- 修改 multiLangaugeSupport 拼写错误的问题(应该是 multiLanguageSupport)
- FLEA_Ajax::dumpJs() 增加了一个 $warpper 参数,指示是否输出
<script></script> 标签
- FLEA_View_SmartyHelper 增加了 dump_ajax_js 插件,便于在 Smarty 模版中输出
FLEA_Ajax 生成的 JavaScript 代码
- 简化 FLEA_View_Lite、FLEA_View_Smarty,并修正一个初始化错误
- FLEA_Dispatcher_Auth::_loadACTFile() 的性能优化
- 修正了 FLEA_Rbac_UsersManager 处理 $_SERVER['REMOTE_ADDR'] 不严密的问题
- 修正使用自定义 Dispatcher 时没有载入类定义的问题
- 新增的 FLEA_Helper_Image::resizeCanvas() 方法可以调整图片大小,但不对原始图像进行缩放
- FLEA_Helper_Image::crop() 对原始图片的定位现在支持 9 种模式
- FLEA_Helper_Image::extractColor() 现在支持 #ff00ee 这样的色彩表示方式
- FLEA_Helper_Image::resizeCanvas() 的 $pos 参数添加默认值 center
- FLEA_Helper_ImgCode 增加了 $keepCode 和 $imagetype 属性,用于指示是否保留已有的验证
码和输出验证码的图片格式
- 修正 FLEA_Helper_ImgCode::checkCaseSensitive() 缺少必要参数的问题
- FLEA_Helper_Verifier 现在支持 notEmpty 验证规则
- 数据库驱动的细微调整,避免 log_message() 未定义的问题
- 数据库驱动现在会在调试模式下将所有执行的 SQL
语句
存入日志文件,方便调试和排错
- 修正 FLEA_Db_SqlHelper::parseConditions() 不支持条件值为 null 的问题
- 修正 FLEA_Db_TableDataGateway::findAll() 中对非整数主键值不支持的问题
- 修正 FLEA_Db_TableLink::saveAssocData() 不支持二维数组和主键值混合的问题
- 改进了 removeByConditions() 和 removeByPkvs() ,现在可以在删除主表记录时处理关联表
- 给 save()、create()、update() 增加了一个 $saveLinks 参数,当该参数为 false
时,更新、创建记录操作将不会处理关联表
- 修正了 findCount() 在以关联表作为查询条件时,结果不正确的问题
- 优化 FLEA_Db_TableDataGateway::_prepareMeta() 的性能
- 现在 FLEA_Language 在找不到语言
文件时,会抛出一个
FLEA_Exception_ExpectedFile 异常
- 修改 FLEA_Log,确保能够记录每一次请求的日志
【2007-04-06】
- 优化了 FLEA_Db_TableDataGateway::findAll() 的 HAS_ONE、HAS_MANY 和
MANY_TO_MANY 关联查询
hasOne 优化了不必要的 LEFT JOIN
hasMany 优化了不必要的 LEFT JOIN
manyToMany 从两次 INNER JOIN 优化为一次 INNER JOIN
【2007-04-04】
昨天发布的 FleaPHP 1.0.70 beta 版,相对于 03月17日,有下列更新和改进:
- 将 __FLEA_DISPLAY_EXCEPTION() 合并到了 __FLEA_EXCEPTION_HANDLER()
- 删 除 mootools 和 prototype,并添加 jquery.js(包含官方 form 插件)(现在 FleaPHP Ajax 绑定于 jQuery)
- __THROW() 现在会返回 false,所以开发者可以用 return __THROW(new FLEA_Exeception()) 直接抛出异常后返回
- encode_url_args() 现在支持嵌套数组
- FLEA::inti() 增加了一个 $loadMVC 变量 。如果该变量为 true,则会载入 MVC.package.php 文件。这样方便开发者从 FLEA_Controller_Action 派生自己的控制器基础类
- FLEA_Db_TableDataGateway::clearLink() 更名为 clearLinks()
- FLEA_Helper_Image::crop() 方法增加了一个 $noOverflow 参数。该参数让开发者可以在将图片转换为指定大小时保持图片的完整,并在周围填充指定的颜色
- 改进了 FLEA_View_SmartyHelper::_pi_func_url()
- 更新了 FLEA.php 中几处对变量的使用
- 将 FLEA_Com_RBAC 目录 下的文件和类,迁移到 FLEA_Rbac(以前使用 FLEA_Com_RBAC 的程序可以不用修改。迁移的原因是有些虚拟主机不允许创建名为 Com 的文件夹)
- 将 FLEA_Db_TableDataGateway::autoVerifier 改名为 autoValidating,以符合该属性的实际用途
- 修 正 FLEA_Db_SqlHelper::parseConditions() 显示 $str 未定义警告信息的问题
- 修正 FLEA_Db_TableDataGateway 在 PHP5 中未能正确处理 where 的问题
- 修正 FLEA_Db_TableDataGateway::updateField() 无法使用的问题
- 修正 parseConditions() 处理条件时的错误
- 修正 t2js 没有过滤 \r 的问题(感谢 hho2002 报告并解决 此问题)
- 修正了错误显示页面可能 输出警告信息的问题
- 修正了对 HAS_ONE、HAS_MANY 和 BELONGS_TO 进行关联条件查询失败的问题
- 修 正载入 FLEA_Com_RBAC 时出现类重复定义错误的问题
- 优化 FLEA_Db_TableDataGateway::findAll()
- 优化了 parseConditions(),现在可以支持更灵活的条件参数
- 新增 FLEA_Helper_Image::extractColor() 方法,用于将 0xfffff 或 ffffff 的颜色字符串转换为 rgb 值
- 新 增 FLEA_WebControls::mergeAttribs(),方便自定义控件处理控件属性值
FleaPHP 1.0.70 正式版发布前将要完成的改进:
- 优化 FLEA_Db_TableDataGateway,消除不必要的 JOIN 查询(比现有查询方式会有质的提高)
- 提供 MS Sql Server 驱动
- 改善对 CGI 模式的支持
- 改进 FLEA_Helper_FileUploader(以便更好的支持批量文件上传)
- 修正 1.0.70 beta 版中发现的错误
【2007-03-17】
* FLEA_Com_RBAC_UsersManager 现在可以保存注册 IP、最后登录时间、最后登录 IP、登录次数、帐户是否锁定信息等信息
* FLEA_Db_TableDataGateway 构造函数现在支持 dbo 属性,用于直接指定该表数据入口对象要使用的 DBO
* FLEA_Db_TableDataGateway、FLEA_Db_TableLink 和 FLEA_Helper_Pager
的一些细节调整,提高易用性
* 如果提交的数据包含有效主键值,那么 FLEA_Db_TableDataGateway::create() 不会再抛出异常
* 修改了 FLEA::parseDSN() 和 FLEA::getDBO(),以便更好的处理多个 DSN 的情况
* 修改了 FLEA_Log 写入日志的一个多余字符
* 修正 FLEA::loadClass() 不能与 __autoload() 配合的问题。感谢 luwenhua 报告此问题。
* 修正 FLEA_Db_TableDataGateway 对于 dsn['port'] 处理不当的问题。感谢 luwenhua 报告此问题。
* 修正 FLEA_Db_TableDataGateway::parseDSN() 在 port 不为空时产生无效 cacheId 的问题。感谢
axing 报告此问题。
* 修正 FLEA_Exception_ExpectedClass 格式化消息时,参数顺序错误的问题
* 修正 FLEA_Helper_Pager getNavbarIndexs() 和 renderPageJumper() 在
basePageIndex 不为 0 时返回错误结果的问题
* 修正 FLEA_Helper_Pager::getNavbarIndexs 生成的页码多一个的问题
* 修正 FLEA_Helper_Pager::getNavbarIndexs() 计算起始页码错误的问题
* 修正了数据库驱动 qstr() 方法在处理数字时的问题
* 优化了 FLEA_Db_TableLink 及其继承类
+ FLEA_Db_TableDataGateway 的重大改进!允许以关联表的字段作为条件查询主表记录
+ FLEA_Db_TableDataGateway 构造函数增加了一个 autoVerifier 选项,用于覆盖 TDG 实例
的 autoVerifier 属性
+ FLEA_Db_TableLink 新增的 saveAssocMethod 属性可以指定在保存关联数据时使用何种方法,默认为 save
+ 数据库驱动新增的 enableLog 属性,允许禁止数据库驱动不保存 SQL 查询记录,从而降低内存占用。调试模式时,该属性为
true,部署模式则为 false。
+ 添加了 FLEA/Com/RBAC.php 占位文件
+ 新增 FLEA_Db_TableDataGateway::removeAllWithLinks() 可以删除所有数据及关联表的所有数据
+ 增加了 FLEA_Helper_FileUploader::existsFile() 方法,用于判断指定的上传文件是否存在
这段时间的更新主要集中在细节调整和错误修正上。务必将 1.0.70 正式版打造为一个非常稳定可靠的开发框架!
其中,最最重要的更新就是 FLEA_Db_TableDataGateway
现在允许以关联表的字段作为条件查询主表记录。
举例说明如下:
- class Table_Posts extends FLEA_Db_TableDataGateway
- {
- var $tableName = 'posts';
- var $primaryKey = 'post_id';
-
- var $belongsTo = array(
- array(
- 'tableClass' => 'Table_Users',
- 'foreignKey' => 'user_id',
- 'mappingName' => 'user'
- )
- );
-
- var $manyToMany = array(
- array(
- 'tableClass' => 'Table_Tags',
- 'foreignKey' => 'post_id',
- 'assocForeignKey' => 'tag_id',
- 'joinTable' => 'posts_to_tags',
- 'mappingName' => 'tags',
- )
- );
- }
上
面的 Table_Posts 比较好理解,分别定义了一个 BELONGS_TO 关联和一个 MANY_TO_MANY 关联。
现在假设要查询所有指定了标签“PHP”的记录,那么代码如下:
- $conditions
= array(
- array('tags.tagname', 'PHP')
- );
- $tablePosts =& new Table_Posts();
- $posts = $tablePosts->findAll($conditions);
- dump($posts);
输出结果可以看到,只有指定了标签“PHP”的记录才
会被查询出来。
同样,可以查询用户名为“dualface”的所有记录。
- $conditions
= array(
- array('user.username', 'dualface')
- );
- $tablePosts =& new Table_Posts();
- $posts = $tablePosts->findAll($conditions);
- dump($posts);
新
的 $condtions 写法比较特别!一定要注意!
查询条件必须是一个数组,并且包含两个元素。第一个元素是字段名,第二个是字段值。
字段名必须是“关联名字.字段名”的形式。
例如要以关联 tags (关联名字由关联的 mappingName 属性指定)的 tagname
字段进行查询,那么字段名就是:“tags.tagname”。
假如不写“tags.”,而只是 “tagname”,查询是无法进行的。
#################################################################
【2007-03-04】
* 修正 FLEA_Helper_Verifier::isDOMAIN() 没有判断值的问题,感谢 freeagle 报告此问题
* WebControls 的 ListBox 和 DropdownList 现在支持 key 和 caption 属性,感谢 freeagle
报告此问题
* 修正 FLEA_Db_TableDataGateway::disableLinks() 调用后,enableLink()
不起作用的问题。修改后,规则如下:
1、调用 disableLinks() 后,禁用所有关联;
2、调用 enableLink($linkName) 后,启用该关联,其他被禁用的关联仍然处于被禁用状态;
3、调用 enableLinks() 后,所有关联将启用,不管该关联以前是否已经被禁用。
* FLEA_Helper_Pager 增加了 basePageIndex 属性,用于指示实际页码的基数。感谢 hegz 的热心建议
。
#################################################################
【2007-02-28】
这段时间对 FleaPHP 1.0.70 做了许多细节上的调整,除了修正一些小 bug,其他调整都是让开发者能够更舒服的使用 FleaPHP。
* 首先是将
FLEA_Controller_Action、FLEA_Dispatcher_Simple、FLEA_Dispatcher_Auth 和
FLEA_Com_RBAC 四个文件合并为了 FLEA/MVC.package.php 文件。其次,将 Mysqlt.php 合并到了
Mysql.php 中,Exception.php 合并到了 FLEA.php 中,TableLink.php 合并到了
TableDataGateway.php 中。
这些合并工作可以明显减少 IO 次数,提高性能。这个修改对应用程序几乎没有影响,除非你在调用 FLEA::runMVC() 之前需要载入
RBAC。于此对应,新增应用程序设置 MVCPackageFilename,用于指示在使用 MVC 模式时要载入哪一个 MVC
模式实现文件。这个选项默认值是 MVC.package.php。
* FLEA_Helper_Verifier 现在会返回检查时没有通过的检查项目
名。有了这个功能,开发者可以很方便的知道在验证
时,数据没有通过哪一项测试(例如类型不符或是长度太长)。这样就能反馈给用户更具体的错误信息,提高应用程序对用户的友好度。
* 强化了 SmartyHelper 中对 url 的支持,现在可以使用数组作为参数来构造 url,例如:
- { url controller='MyController' action='MyAction' id=$id __moreArgs=$moreArgs }
上面的 __moreArgs 是一个占位符(可以是任何名字,只要不和其他参数同名),而 $moreArgs 就是一个数组,内容是 array('type' => 'article', 'sort' => 'desc')。最后生成的 url 如下:
- http://localhost/index.php?controller=MyController&action=MyAction&id=1&type=article&sort=desc
这样在模版中构造带有动态参数的 url 就非常方便了。更复杂的实际例子
:
- { url controller='BoProducts' action='index' page=$pager.currentPage sort=$columnsSort.created __condition=$conditions __filter=$filter }
* FLEA_Helper_Pager::getPagerData() 可以返回分页的相关数据,包括 pageSize, totalCount, count, pageCount, firstPage, firstPageNumber, lastPage, lastPageNumber, prevPage, prevPageNumber, nextPage, nextPageNumber, currentPage, currentPageNumber。使用示例:
- //
PHP 脚本
- $view->assign('pager', $pager->getPagerData());
- $view->display('template.tpl');
- // template.tpl 模版
- 共有 { $pager.totalCount } 条记录,分为 { $pager.pageCount } 页显示,每页 { $pager.pageSize} 条
* FLEA_Helper_Pager::getNavbarIndexs() 可以产生指定范围内的页面索引和页号,例如:
- //
PHP 脚本
- $currentPage = 当前页索引;
- $view->assign('navbarIndexs',
$pager->getNavbarIndexs($currentPage, 8));
- $view->display('template.tpl');
- // template.tpl 模版
- 选择要查看的页码:
- { section name=nav loop=$navbarIndexs }
- <a href="{ url controller='MyController' action='MyAction'
page=$navbarIndexs[nav].index }">[{ $navbarIndexs[nav].number
}]</a>
- { /section }
上面的代码会产生一个最多 8 页的页码条。假如当前页是第 8 页,那么这个页码条就从第 4 页到 11 页,如下图:
* WebControls 增加了一个 static 类型控件
* 改进了 WebControls,raidoGroup 和 checkboxGroup 支持表格显示方式
* 改进了 FLEA_WebControls 对 radioGroup 和 checkboxGroup 的支持
现在的 WebControls 在生成 checkbox 组和 radio button 组时非常方便了,实际应用的例子:
- { webcontrol
type='checkboxgroup' name='tags1' items=$allTags key='tag_id'
caption='tagname' multirow=true cols=6 table=true }
- { webcontrol type='radiogroup' name='tags2' items=$allTags key='tag_id' caption='tagname' multirow=true cols=6 table=true }
效果如下:
* 现在 FLEA_Ajax::registerEvent() 返回事件在客户端的响应函数名
* 现在 FLEA_Controller_Action::_registerEvent() 返回事件在客户端的响应函数名,而不是
FLEA_Ajax 对象实例
* 将 cysin 翻译的英文错误信息更新到 _Errors/default/ErrorMessage.php 文件中。
* 根据 etng 提供的 patch 修改了 SHOP 示例程序。现在 SHOP 示例程序已经完全与 FleaPHP 1.0.70 兼容。
* 将 json_encode() 和 json_decode() 的定义移动到文件 FLEA.php 中。这样无需载入
FLEA/Ajax.php 就可以使用 json_encode() 和 json_decode() 了。
* 修改了“部署”模式的默认设置,将显示异常信息,但不会暴露应用程序文件位置和更多的信息。这样既能看到错误信息,又不会暴露有安全隐患的内容。
* 修改了“部署”模式对数据库元数据的缓存时间,默认为 900 秒。
+ 增加了应用程序设置 displaySource,指示在显示异常信息时是否显示文件源代码。FleaPHP
在应用程序出错时,会显示详细的错误信息,以及出错位置附近的源代码。这个特性在开发时很有用,但应用程序部署到服务器前务必将该设置改为
false,否则出错时,会看到应用程序的部分源代码,可能造成安全问题。
* 细调了 FLEA_Language 和 FLEA_Log,对开发者没有影响。
* 修正了 FLEA_Db_TableDataGateway 没有正确调用 verifier 的问题。
* 修正 FLEA_Helper_Verifier 对 ALPHANUMX 类型验证错误的问题。
* 修正当提交给 FLEA_Db_TableDataGateway::create() 的数据包含主键字段值时,create()
不会处理关联数据的问题。
* 现在当 FLEA_Db_TableDataGateway::findAll() 获取关联数据时,如果关联数据不存在,对应的映射字段会设置为
null。
#################################################################
【2007-02-08】
+ 增加了 FLEA_Dispatcher_Simple::parseUrl() 方法,用于分析指定 url 中包含的控制器名字和动作名
+ FLEA_Helper_Pager 增加了 getPagerData() 和 getNavbarIndexs()
方法,分别用于获得分页参数和指定页段的索引和页码(方便在 Smarty 模版引擎中使用)
+ FLEA_View_SmartyHelper 增加了 parse_str、to_hashmap 和 col_values
方法,方便在模版中处理数据
+ FLEA_WebControls 增加了 CheckBoxGroup 控件类型
* 错误信息输出格式有细微的调整
* 改进了 WebControls,以便更好的支持自定义控件。
#################################################################
【2007-02-07】
增加了一个 SmartyHelper,为 Smarty 和 TemplateLite(一个 Smarty
的替代品)模版引擎提供更好的支持。目前包括下列自定义函数:
{ url controller='controller name' action='action name' }
{ webcontrol type='textbox' name='username' size=30 class='css_style' }
{ _t key='word' lang='chinese-gb2312' }
{ get_app_inf key='defaultController' }
其中 url 和以前的用法有所区别:
以前是:{ url controller='controller name' action='action name'
args='key=value&key2=value2' }
现在是:{ url controller='controller name' action='action name' key='value'
key2=$value2 }
新的写法更容易将变量传递给 url 函数。webcontrol 的用法和 url 类似。
增加了对 TemplateLite 模版引擎的支持。这个模版引擎是以前的 Smarty Lite,相当于简化版的
Smarty,但速度更快,而且有 Smarty 的绝大部分功能。
删除了 QuickTemplate(不能比现有的做得更好就没有存在的价值)、SimpleTemplate(这个模版引擎功能太少,如果需要可以从
FleaPHP 1.0.6x 中 copy 来用)。
改进了 FLEA_Com_RBAC_UsersManager::validateUser()
方法,以便记录用户的最后登录时间和累计登录次数。并且返回值可以是用户数据,使得开发者只需一次 validateUser()
调用就能够完成用户名、密码验证,并获得有效的用户数据。
这几天改动不大,下一步是把 Ajax 部分对 prototype 和 jquery 的支持做好。
#################################################################
【2007-01-31】
添加了一个 Ajax 示例程序,用于演示 FleaPHP 提供的 Ajax 功能。目前有三项测试,分别是:
- 用 Ajax 提交一个值,然后从服务器获得结果;
- 用 Ajax 提交一个表单 ,然后从服务器获得结果;
- 用 Ajax 获取一个 JSON。
三个测试分别演示如何提交一个控件(例如文本输入框)的值、如何提交表单、如何从服务器获取一个
JSON。
完善了 FLEA_Ajax 类和 mootools 的适配器,现在对于每一个 Ajax 请求支持下列属性:
- method: 请求方法,可设置为 post、get,默认为 post
- postBody: 请求访问 为 post 时,要提交给服务器的数据
- parameters: 附加的请求参数(通过 GET 传递)
- dataControl: 指定的控件 ID 及其值会作为 postBody 提交
- beforeRequest: 发起请求前要执行的代码
- afterRequest: 提交请求后要执行的代码
- onSuccess: 请求成功后要执行的代码
- onFailure: 请求失败时要执行的代码
- onStateChange: 请求状态改变时要执行的代码
- async: 指示请求是异步还是同步,默认为异步请求,设置为 false 时使用同步请求
- update: 指示请求成功时,更新哪一个控件的 innerHTML 属性,update 的值是控件 ID
- updateValue: 指示请求成功时,更新哪一个控件的 value 属性,updateValue 的值是控件的 ID
- eval: 当 eval 为 true 时,服务端返回的内容如果是 JavaScript 脚本,则执行
- loadingIcon: 当发出
Ajax 请求时,修改指定控件的样式为 display:block,
请求收到回响后再将控件的样式设置为 display:none - clearUpdate: 如果为 true,则发出请求时,清空 update 和 updateValue 指定的控件
使用这些属性,可以确保不管使用哪一个 JavaScript
库,应用程序都可以获得一样的运行效果。FleaPHP 会根据开发者选择的 JavaScript 库动态生成不同的 JavaScript
代码。这样可以避免将开发者绑定到某个特定的 JavaScript 库,给于开发者最大的灵活性。
目前只有 mootools
的适配器已经开发完成,正在开发的适配器有 prototype
和 jquery
的。
链接:http://qeephp.com/bbs/viewthread.php?tid=183&extra=page%3D2%26amp%3Bfilter%3Ddigest&page=1
- FLEAPHP1.0.70API参考.rar (428.9 KB)
- 描述: 虽然比较旧,但就是喜欢它注释齐全
- 下载次数: 1
发表评论
-
FleaPHP分页方法讲解
2010-05-22 15:42 1608本来这篇文章是不想写的,要写早几年就应该写了,为甚么突然想起要 ... -
在xheditor编辑器的WYSWYG编辑模式下增加插入代码功能
2010-05-18 13:56 3143xhEditor HTML编辑器为国人所开发,是一个基于jQu ... -
FleaPHP的用户权限管理
2010-05-10 00:59 1991有些刚接触FleaPHP的童靴对于用户权限管理有些摸不着头脑, ... -
类javaeye博客我的收藏页面中分类标签输入功能的实现
2010-05-09 01:08 2617javaeye博客的收藏管理页面,收藏分类是通过下拉列表选择来 ... -
FleaPHP全部版本源代码下载
2010-04-21 19:40 980下载地址: http://old.fleaphp.or ... -
FleaPHP的单入口文件详解
2010-04-18 11:34 3912论坛贴:http://qeephp.com/bbs/threa ... -
FLEA_Rbac_UsersManager 类中的fetchRoles()方法的bug修正
2010-04-09 16:43 983影响版本:1.7.1524及早期版本。 原有代码在 P ... -
FleaPHP与Fpdf结合,创建PDF文档
2010-04-06 20:59 2330应本地交警部门的请求,开发 了一个利用交警部门导出的缴款 ... -
FleaPHP数据关联
2010-03-30 21:17 1139$belongsTo 定义从属关 ... -
FleaPHP中如何捕获异常?
2010-03-30 00:09 864兼容PHP4: __TRY(); $newsCont ... -
FleaPHP页面数据缓存
2010-03-29 23:58 1092dualface : FleaPHP 的视图缓存论坛里 ... -
直接利用findAll进行分页查询(限定结果集查询)
2010-03-29 23:51 1739findAll是 FLEA_Db_TableDataGatew ... -
FLEA/Helper/Array.php中array_to_tree的用法
2010-03-29 23:19 1976FLEA/Helper/Array.php中的array_to ...
相关推荐
fleaphp框架,国产最好php开发框架
Fleaphp内置了错误处理机制,当程序发生错误时,可以生成详细的错误报告,便于调试。同时,框架还支持日志记录,方便追踪和分析应用运行中的问题。 九、辅助函数(Assistants) Fleaphp提供了一系列的辅助函数,它们...
8. **错误处理**:Fleaphp有完善的错误处理和日志记录功能,能帮助开发者在开发过程中快速定位和解决问题。它还支持自定义错误页面,提升用户体验。 9. **安全特性**:Fleaphp关注应用的安全性,内置了防止SQL注入...
1. **轻量级框架**:Fleaphp设计的核心理念是简洁和高效,它拥有较小的体积,适合快速开发小型到中型的Web应用。这种框架的优点在于它易于学习,且不会对服务器资源造成过大的负担。 2. **MVC架构**:Fleaphp遵循...
FleaPHP框架是一款轻量级的PHP开发框架,旨在提高开发效率并降低项目的维护成本。它的设计理念是简洁、高效和可扩展,使得开发者能够快速构建Web应用。在深入理解FleaPHP框架之前,我们首先需要了解PHP框架的基本...
作为一款优秀的框架,Fleaphp旨在提供高效、简洁且易于上手的开发工具,帮助开发者快速构建Web应用。下面将详细介绍Fleaphp的主要特点、核心组件以及如何使用它进行开发。 1. **主要特点** - **轻量级**:Fleaphp...
Fleaphp框架是一款专为提高开发效率设计的轻量级PHP框架,它以其简洁的代码结构、良好的可扩展性和易学性深受开发者喜爱。在本文中,我们将深入探讨Fleaphp框架的核心特性,常见问题及解决方案,以及如何有效地使用...
《Fleaphp开发指南》是一本专为初学者设计的PHP框架学习手册,特别针对FleaPHP这一轻量级框架进行了深入浅出的讲解。FleaPHP是一款基于PHP5的MVC(Model-View-Controller)架构的开源框架,旨在简化Web应用的开发...
Fleaphp的核心设计理念是“简洁、实用”,为开发者提供了一套高效的开发工具集,使他们能够快速构建动态、数据库驱动的Web应用。 在“fleaphp框架附实例(最新版)”中,我们可以期待获得以下几方面的知识点: 1. **...
fleaphp.chm手册
### FleaPHP 开发指南知识点总结 #### 一、开始前的准备工作 FleaPHP 开发者们在开始学习和使用此框架之前,应该确保具备一个稳定且一致的开发环境,以便更好地理解和应用FleaPHP的功能特性。为了达到这一目的,...
这份文档是学习和使用FleaPHP的关键资源,它将指导您如何有效地利用框架的功能进行开发。 总的来说,FleaPHP是一个全面的PHP开发工具,它的设计理念和功能特性使其成为快速构建Web应用的理想选择。通过深入学习和...
《大道PHP 第44章 应用FleaPHP...通过本章的学习,读者将全面了解使用FleaPHP框架构建论坛社区系统的过程,从需求分析、功能设计到数据库设计,再到实际开发环境的搭建,从而提升PHP开发技能,掌握实际项目开发的经验。
FleaPHP的单入口文件是整个框架运行的核心,理解其工作原理对于开发和调试FleaPHP应用至关重要。通过深入研究`FleaPHP核心.chm`文档,开发者可以获得更详细的框架内部机制和最佳实践,从而更好地利用FleaPHP构建高效...
在FleaPHP开源应用程序开发框架中,有几个关键的系统方法,它们是开发高效Web应用的基础。下面我们将详细探讨这些方法: 1. **FLEA::initWebControls()**: 这个函数用于初始化WebControls,它返回一个`FLEA_...
FleaPHP chm文档,简单实例,框架流程介绍