﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>PHP博客-为了忘却的纪念   $bestmost-&gt;save("多多益善")-随笔分类-fleaphp</title><link>http://www.phpweblog.net/fuyongjie/category/533.html</link><description>言己及众</description><language>zh-cn</language><lastBuildDate>Mon, 20 Oct 2008 06:25:00 GMT</lastBuildDate><pubDate>Mon, 20 Oct 2008 06:25:00 GMT</pubDate><ttl>60</ttl><item><title>Fleaphp函数用法举例</title><link>http://www.phpweblog.net/fuyongjie/archive/2008/10/20/5959.html</link><dc:creator>bestmost</dc:creator><author>bestmost</author><pubDate>Mon, 20 Oct 2008 03:51:00 GMT</pubDate><guid>http://www.phpweblog.net/fuyongjie/archive/2008/10/20/5959.html</guid><wfw:comment>http://www.phpweblog.net/fuyongjie/comments/5959.html</wfw:comment><comments>http://www.phpweblog.net/fuyongjie/archive/2008/10/20/5959.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.phpweblog.net/fuyongjie/comments/commentRss/5959.html</wfw:commentRss><trackback:ping>http://www.phpweblog.net/fuyongjie/services/trackbacks/5959.html</trackback:ping><description><![CDATA[<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>最近用了一下Fleaphp，也是菜鸟一小只，反正我看fleaphp的API看的时候有时是懵懵懂懂，关键问题所在没有例子，所以在学习的同时把常用的和不长用的函数做了一下整理，这里包括在论坛上一些正确的答案，并加入了一些例子，方便一下想学fleaphp而又苦于看API的时候没有例子看的朋友，鄙人也是小菜鸟，写的不好，有些过于简单，所以请大虾闪过，鄙人是看到哪里写到哪里，跳跃性比较大，有点乱，所以请大家不要惊慌，本人的思维是没有问题的，请大家放心阅读，如果想查看哪些函数，请在本WEB页用ctrl+F查找，<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>今天写了20个函数，所以先发20，有时间再写再发，如果有些朋友想了解函数，又不愿意自己测试，请写发贴上来，鄙人有时间为大家效劳，献丑了<img src="http://www.phpweblog.net/Images/dot.gif"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>1。FLEA_Db_TableDataGateway<span style="COLOR: red">::update</span>&nbsp;（）用法：<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>例如：修改一条&nbsp;uid=22&nbsp;的记录,&nbsp;name字段改成"11",&nbsp;pass字段改成"22",就要这样写：<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>$data&nbsp;=&nbsp;array('uid'=&gt;22,'name'=&gt;11,'pass'=&gt;22);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>$table-&gt;update($data);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>2。FLEA_Db_TableDataGateway<span style="COLOR: red">::updateByConditions</span>（）用法：<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>例如：更新所有&nbsp;level_ix&nbsp;=&nbsp;3&nbsp;的记录，并且把这些记录的特定字段（由&nbsp;$row&nbsp;确定）都更新为指定的值。<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>$row&nbsp;=&nbsp;array(<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;字段&nbsp;=&gt;&nbsp;字段值<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;字段&nbsp;=&gt;&nbsp;字段值<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;字段&nbsp;=&gt;&nbsp;字段值<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;字段&nbsp;=&gt;&nbsp;字段值<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>$conditions&nbsp;=&nbsp;array('level_ix'&nbsp;=&gt;&nbsp;3);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>$table-&gt;updateByConditions($conditions,&nbsp;$row);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>3。FLEA_Db_TableDataGateway::<span style="COLOR: red">updateField</span>（）用途：更新记录的指定字段，返回更新的记录总数<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>例如：以查找满足$conditions的条件，修改其中字段为class_id的值为$targetId.<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>$sourceId&nbsp;=&nbsp;$_POST['source'];&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>$targetId&nbsp;=&nbsp;$_POST['target'];&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>$conditions&nbsp;=&nbsp;array('class_id'&nbsp;=&gt;&nbsp;$sourceId);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>$table-&gt;updateField($conditions,'class_id',$targetId);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>4。FLEA_Db_TableDataGateway::updateRowset&nbsp;（）用途：更新记录集（多行记录）<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>用法和update&nbsp;（）类似，只不过是修改多条记录：<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>例如：$data&nbsp;=array(array('id'=&gt;'2','name'=&gt;'111','job'=&gt;'111'),array('id'=&gt;'3','name'=&gt;'222','job'=&gt;'222'));<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$arr=$this-&gt;_test-&gt;updateRowset($data);想必大家能看明白吧<img src="http://www.phpweblog.net/Images/dot.gif">呵呵。。。<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>一定注意：$data&nbsp;一定要是二维的，即使用updateRowset&nbsp;（）修改一条记录也要这样写：<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$data=array(array('id'=&gt;'2','name'=&gt;'111','job'=&gt;'111'));<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>说得清不清楚啊？呵呵<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>5。FLEA_Db_TableDataGateway::create&nbsp;（）用途：插入一条新记录，返回新记录的主键值<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>例如：$data&nbsp;=&nbsp;array(array('uid'=&gt;22,'name'=&gt;11,'pass'=&gt;22),array('uid'=&gt;23,'name'=&gt;12,'pass'=&gt;23));<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$table-&gt;create($data);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>6.FLEA_Db_TableDataGateway::createRowset()插入多行记录，返回包含所有新记录主键值的数组<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>例如：$data&nbsp;=&nbsp;array(array('uid'=&gt;22,'name'=&gt;11,'pass'=&gt;22),array('uid'=&gt;23,'name'=&gt;12,'pass'=&gt;23));<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$table-&gt;createRowset($data);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>7.FLEA_Db_TableDataGateway::remove&nbsp;()&nbsp;删除一条记录,条件必须为主键<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>例如：remove(array("id"=&gt;"2"));<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>8。FLEA_Db_TableDataGateway::removeByConditions&nbsp;（）看名知义，当然是删除符合条件的记录喽<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>正常情况下和remove（）的条件可以通和，如果对有多个主键的表进行删除操作：<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>conditions&nbsp;=&nbsp;array(<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;'主键1'&nbsp;=&gt;&nbsp;xxx,<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;'主键2'&nbsp;=&gt;&nbsp;yyy,<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;'主键3'&nbsp;=&gt;&nbsp;zzz,<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>)<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>$table-&gt;removeByConditions($conditions);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>另注意一点：如果某个表有多个主键的话，那么它所对应的Model中的&nbsp;&nbsp;&nbsp;$primaryKey&nbsp;只能设置为一个最常用的主键，不能设置为一个数组<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>9。&amp;&nbsp;FLEA_Db_TableDataGateway::findBySql&nbsp;（）用途：直接使用&nbsp;sql&nbsp;语句获取记录<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>例如：&nbsp;$arr=$this-&gt;_test-&gt;findBySql('SELECT&nbsp;*&nbsp;FROM&nbsp;newtable');<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>10。FLEA_Db_TableDataGateway::decrField&nbsp;（）用途：减小符合条件的记录的指定字段的值，返回更新的记录总数&nbsp;（该操作不会引发任何事件，也不会处理关联数据）。<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>例如：$arr=$this-&gt;_test-&gt;decrField(array('id'=&gt;'3'),'prize',$decr&nbsp;=&nbsp;2);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>注意：$decr默认值为1，数字2是本人自己改的，当然你也可以改为34568了，改几就减几，明白了吧。。。<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>11。FLEA_Rbac_UsersManager::updatePasswordById&nbsp;（）用途：直接更新密码<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>例如：把ID为1的密码设为00000<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>$arr=$this-&gt;_student-&gt;updatePasswordById&nbsp;('1','000000');<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>注意：前提是数据库中一定要有叫做Password的字段；修改后的密码是加密的。<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>12。FLEA_Rbac_UsersManager::checkPassword&nbsp;（）用途：检查密码的明文和密文是否符合<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>例如：&nbsp;$user&nbsp;=&nbsp;$usersManager-&gt;findByUsername('andy');<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;$usersManager-&gt;checkPassword('000000',&nbsp;$user[$usersManager-&gt;passwordField]))<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>13.FLEA_Rbac_UsersManager::encodePassword&nbsp;（）用途：将密码明文转换为密文<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>例如：&nbsp;$user&nbsp;=&nbsp;$this-&gt;_student-&gt;findByUsername('andy');<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$arr=$this-&gt;_student-&gt;encodePassword($user[$this-&gt;_student-&gt;passwordField]);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;_student-&gt;updatePassword($user[username],$arr);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>注意：前提是数据库中一定要有叫做Password的字段；<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>14.FLEA_Rbac_UsersManager::updatePasswordById&nbsp;（）用途：直接更新密码<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;这个我不说了啊，我想聪明的你一看例11就会明白了<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>15。FLEA_Db_TableDataGateway::updateByConditions&nbsp;（）用途：更新符合条件的记录，成功返回更新的记录总数<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>例如：&nbsp;$condition=array('id'=&gt;2);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$row=array('name'=&gt;'nicholas');<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;_test-&gt;updateByConditions($condition,$row);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>16.FLEA_Db_TableDataGateway::updateField&nbsp;()&nbsp;用途：更新记录的指定字段，返回更新的记录总数&nbsp;该操作不会引发任何事件，也不会处理关联数据。<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>例如：修改id为2的记录，把字段为name的值修改为vin就要这么写：<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$condition=array('id'=&gt;2);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;_test-&gt;updateField($condition,'name','vin');<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>17、FLEA_Db_TableDataGateway::incrField&nbsp;()&nbsp;用途：增加符合条件的记录的指定字段的值，返回更新的记录总数<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>例如：这个也不说，去看例10吧，但要注意，例10是减，这个是加，嘿嘿。。。<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>18。FLEA_Db_TableDataGateway::replaceRowset&nbsp;()&nbsp;用途：替换记录集（多行数据），返回记录集的主键字段值，失败返回&nbsp;false<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$condition=array(array('id'=&gt;2,'name'=&gt;nicholas,'job'=&gt;good));<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;_test-&gt;replaceRowset($condition);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>注意：1，假设表中有id,name,job,prize等，如果在$condition中没写prize字段，会就默认插入空，原有的数据会被清除，如不注意，也许会丢失数据&nbsp;2。$condition一定是二维的<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>19。FLEA_Db_TableDataGateway::removeAll&nbsp;（）用途：删除所有记录，用时要谨慎<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>例如：$this-&gt;_test-&gt;removeAll&nbsp;（）；<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>20。FLEA_Db_TableDataGateway::removeAllWithLinks&nbsp;（）用途：删除所有记录及关联的数据<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>注意：这个更加要慎用，所有与这个表有关联的表数据都将被删除，何谓有关联，也就是说，此表中的某个字段可能是另外一个表中的外键，此谓之有关联。<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>例如：<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>在MODEL中一个叫做com的表关联了一个叫做student的表，com表中的uid是student表中的外键，那么我们就说这两个表关联起来了，是用下面的方法关联起来的<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>class&nbsp;Model_com&nbsp;extends&nbsp;FLEA_Db_TableDataGateway<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>{<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;$tableName&nbsp;=&nbsp;'newtable';<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;$primaryKey&nbsp;=&nbsp;'uid';<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;var&nbsp;$hasOne=array('tableClass'&nbsp;=&gt;&nbsp;'Model_student',<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'foreignKey'&nbsp;=&gt;&nbsp;'uid',<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'mappingName'=&gt;'jobs');<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>}<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>这时，我们执行下面的语句：<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>$this-&gt;_test&nbsp;=&amp;&nbsp;FLEA::getSingleton('Model_com');&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>$this-&gt;_test-&gt;removeAllWithLinks();<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>大家想会发生什么后果？答对了，com表中的所有数据和student表中的所有数据都被删除了，注意是数据被删除了，表和字段还在。知道这个函数的邪恶了吧，所以请大家慎用。。。<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></div>
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000">21</span><span style="COLOR: #000000">。FLEA_Db_TableDataGateway</span><span style="COLOR: #000000">::</span><span style="COLOR: #000000">removeByPkv&nbsp;(主键值)&nbsp;参数是主键值，是几就写几，如：</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">，</span><span style="COLOR: #000000">2</span><span style="COLOR: #000000">，3等等。。。用途：根据主键值删除记录，首先删除关联表数据，再删除主表数据，简单的说，假如你把主表中ID为&#8216;</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">&#8217;的一个条数据删除了，那么，与其关联的表中的那条ID为</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">1&#8216;的条件也会被删除。<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>例如：$arr=$this-&gt;_test-&gt;removeByPkv&nbsp;(</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>22。FLEA_Db_TableDataGateway::removeByPkvs（主键值数组）用途：删除数组中所有主键值的记录<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>注意：参数是数组，而且不能像以往类似array(</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">ID&#8217;</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">)这样写成关联数组，要这样写：</span><span style="COLOR: #0000ff">array</span><span style="COLOR: #000000">(</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">2</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">3</span><span style="COLOR: #000000">)<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>例如：&nbsp;</span><span style="COLOR: #800080">$conditions</span><span style="COLOR: #000000">=</span><span style="COLOR: #0000ff">array</span><span style="COLOR: #000000">(</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">，</span><span style="COLOR: #000000">2</span><span style="COLOR: #000000">，</span><span style="COLOR: #000000">3</span><span style="COLOR: #000000">);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$arr</span><span style="COLOR: #000000">=</span><span style="COLOR: #800080">$this</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">_test</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">removeByPkvs(</span><span style="COLOR: #800080">$conditions</span><span style="COLOR: #000000">);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>这两条语句的意思就是删除表中主键为1，</span><span style="COLOR: #000000">2</span><span style="COLOR: #000000">，3的记录。<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>发现一个问题：API上说：这条语句是删除数组中所有主键值的记录，该操作不会处理关联，但在实际测试的时候发现会影响关联表中的数据，关联表中的数据也一并被删除了，请大虾们解释一下，何故？<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #000000">23</span><span style="COLOR: #000000">。FLEA_Db_TableDataGateway</span><span style="COLOR: #000000">::</span><span style="COLOR: #000000">enableLink&nbsp;（）用途：启用指定关联<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>这个来自论坛廖老大答网友问，嘿嘿，当然要比鄙人解释的好，所以贴过来啦。。。<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000">&nbsp;Table_Posts&nbsp;</span><span style="COLOR: #0000ff">extends</span><span style="COLOR: #000000">&nbsp;FLEA_Db_TableDataGateway<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>{<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000"><img src="http://www.phpweblog.net/Images/dot.gif">.</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000"><img src="http://www.phpweblog.net/Images/dot.gif">..</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">&nbsp;enableLink()&nbsp;参数就是关联的&nbsp;mappingName</span><span style="COLOR: #008000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #800080">$tablePosts</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">enableLink(</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">comments</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #000000"><img src="http://www.phpweblog.net/Images/dot.gif">..</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">var</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #800080">$hasMany</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">array</span><span style="COLOR: #000000">(<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">array</span><span style="COLOR: #000000">(<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">tableClass</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">Table_Comments</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">foreignKey</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">post_id</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">mappingName</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">comments</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000"><img src="http://www.phpweblog.net/Images/dot.gif">..</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">enabled</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">false</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">&nbsp;这里是关键，表示默认禁用该关联</span><span style="COLOR: #008000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;)<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>}上面的代码定义了一个关联，但是查询时该关联并不会启用。只有在确实需要查询关联数据时，使用&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #000000"><img src="http://www.phpweblog.net/Images/dot.gif">..</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">&nbsp;enableLink()&nbsp;参数就是关联的&nbsp;mappingName</span><span style="COLOR: #008000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #800080">$tablePosts</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">enableLink(</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">comments</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #000000"><img src="http://www.phpweblog.net/Images/dot.gif">..</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #000000">24</span><span style="COLOR: #000000">。FLEA_Db_TableDataGateway</span><span style="COLOR: #000000">::</span><span style="COLOR: #000000">enableLinks（）用途：启用所有或多个关联<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>注意参数是个数组，这么写：<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #800080">$this</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">_test</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">enbleLinks(</span><span style="COLOR: #0000ff">array</span><span style="COLOR: #000000">(</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">jobs</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">，</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">teacherjob</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">));<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>这样就可以启用多个关联了，呵呵<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #000000">25</span><span style="COLOR: #000000">。disableLink&nbsp;（）用途：禁用指定关联<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>请大家参照例23，用法都是一样的，只是作用相反<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #000000">26</span><span style="COLOR: #000000">。disableLinks&nbsp;（）用途：禁用所有或多个关联<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>这个请大家参照例24，用法一样<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #000000">27</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">FLEA_Db_TableDataGateway</span><span style="COLOR: #000000">::</span><span style="COLOR: #000000">clearLinks（）用途：清除所有关联<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>例如：</span><span style="COLOR: #800080">$this</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">_test</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">clearLinks&nbsp;();<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$arr</span><span style="COLOR: #000000">=</span><span style="COLOR: #800080">$this</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">_test</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">findAll();<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>这时，与_test有关联的表中的数据就不会被显示出来了<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #000000">28</span><span style="COLOR: #000000">。FLEA_Db_TableDataGateway</span><span style="COLOR: #000000">::</span><span style="COLOR: #000000">relink&nbsp;（）用途：重建所有关联<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>给大家举个例子就全明白了：<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$this</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">_test</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">clearLinks&nbsp;();<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$this</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">_test</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">relink&nbsp;（）;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$arr</span><span style="COLOR: #000000">=</span><span style="COLOR: #800080">$this</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">_test</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">findAll();<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>注意例28和例27的区别，多一句&nbsp;</span><span style="COLOR: #800080">$this</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">_test</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">relink&nbsp;（）;虽然前一句cldarLinks清除了所有关联，但是这句又把清除的关联又得新连接起来了，呵。。。<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>这回关联表中的数据又都显示出来了，嘿嘿，明白了吧<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #000000">29</span><span style="COLOR: #000000">.&amp;</span><span style="COLOR: #000000">&nbsp;FLEA_Db_TableDataGateway</span><span style="COLOR: #000000">::</span><span style="COLOR: #000000">getLink&nbsp;()<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>测试出来结果了，但还是不明白他的作用是什么，我会在论坛上发贴寻问，弄明白再贴上<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #000000">30</span><span style="COLOR: #000000">.&amp;</span><span style="COLOR: #000000">&nbsp;FLEA_Db_TableDataGateway</span><span style="COLOR: #000000">::</span><span style="COLOR: #000000">getLinkTable&nbsp;()<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>（同上）<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #000000">31</span><span style="COLOR: #000000">.&amp;</span><span style="COLOR: #000000">&nbsp;FLEA_Db_TableDataGateway</span><span style="COLOR: #000000">::</span><span style="COLOR: #000000">existsLink&nbsp;(paddingname)&nbsp;用途：检查指定名字的关联是否存在<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>例如：</span><span style="COLOR: #0000ff">class</span><span style="COLOR: #000000">&nbsp;Model_com&nbsp;</span><span style="COLOR: #0000ff">extends</span><span style="COLOR: #000000">&nbsp;FLEA_Db_TableDataGateway<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>{<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">var</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #800080">$tableName</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">newtable</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">var</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #800080">$primaryKey</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">uid</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">var</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #800080">$hasMany</span><span style="COLOR: #000000">=</span><span style="COLOR: #0000ff">array</span><span style="COLOR: #000000">(<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">array</span><span style="COLOR: #000000">(</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">tableClass</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">Model_student</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">foreignKey</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">uid</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">mappingName</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">jobs</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">'enabled'&nbsp;=&gt;&nbsp;false</span><span style="COLOR: #008000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;)</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">array</span><span style="COLOR: #000000">(</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">tableClass</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">Model_teacher</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">foreignKey</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">uid</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">mappingName</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">teacherjob</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">'enabled'&nbsp;=&gt;&nbsp;false</span><span style="COLOR: #008000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;)<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>}<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>这是在MODEL中定义的，关联了两个表，paddingname分别是jobs</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">teacherjob，大家看好，如果我在控制器中这么写：<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #800080">$arr</span><span style="COLOR: #000000">=</span><span style="COLOR: #800080">$this</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">_test</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">existsLink&nbsp;(</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">teacherjob</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>dump(</span><span style="COLOR: #800080">$arr</span><span style="COLOR: #000000">);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>就会在浏览器中输出</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>如果这么写<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #800080">$arr</span><span style="COLOR: #000000">=</span><span style="COLOR: #800080">$this</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">_test</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">existsLink&nbsp;(</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">teacher</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>dump(</span><span style="COLOR: #800080">$arr</span><span style="COLOR: #000000">);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>就会没有输出，看明白什么意思了吧，也就是说没有这个字段就不会有输出，有这个paddingname就会输出</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">啦，呵。。。<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #000000">32</span><span style="COLOR: #000000">。FLEA_Db_TableDataGateway</span><span style="COLOR: #000000">::</span><span style="COLOR: #000000">createLink&nbsp;（）用途：建立关联，并且返回新建立的关联对象<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>这个不班门弄斧了，这个是论坛上的，一看就明白：<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #800080">$link</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">array</span><span style="COLOR: #000000">(<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">tableClass</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">Table_Test</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">foreignKey</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">test_id</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">mappingName</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">test</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #800080">$table</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">createLink(</span><span style="COLOR: #800080">$link</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">&nbsp;HAS_MANY);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #000000">33</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">assembleRecursionRowset()&nbsp;和&nbsp;assembleRecursionRow()<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>例如：廖老大发的，啥也不说了，无条件接受吧，嘿嘿。。。<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>http</span><span style="COLOR: #000000">:</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">www.fleaphp.org/bbs/viewthread.php?tid=1878&amp;highlight=assembleRecursionRow</span><span style="COLOR: #008000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #000000">34</span><span style="COLOR: #000000">。</span><span style="COLOR: #000000">&amp;</span><span style="COLOR: #000000">&nbsp;FLEA_Db_TableDataGateway</span><span style="COLOR: #000000">::</span><span style="COLOR: #000000">findByField&nbsp;（）<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>例如：例如findByField(</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">sno</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">，</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">020497</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">)</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">其实就是和find(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">sno='020497'</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">)是一样的效果<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #000000">35</span><span style="COLOR: #000000">。url($&nbsp;controllerName&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">null</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #800080">$actionName</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">null</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #800080">$params</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">null</span><span style="COLOR: #000000">,</span><span style="COLOR: #800080">$anchor</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">null</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">$&nbsp;options&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">null</span><span style="COLOR: #000000">)&nbsp;用途：很大！<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>这部分选自API，有例子，很好：<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>构造&nbsp;url&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>构造&nbsp;url&nbsp;需要提供两个参数：控制器名称和控制器动作名。如果省略这两个参数或者其中一个。<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>则&nbsp;url()&nbsp;函数会使用应用程序设置中的确定的默认控制名称和默认控制器动作名。&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>url()&nbsp;会根据应用程序设置&nbsp;urlMode&nbsp;生成不同的&nbsp;URL&nbsp;地址：&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>URL_STANDARD&nbsp;</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">&nbsp;标准模式（默认），例如&nbsp;index</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">php</span><span style="COLOR: #000000">?</span><span style="COLOR: #000000">url</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">Login</span><span style="COLOR: #000000">&amp;</span><span style="COLOR: #000000">action</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">Reject</span><span style="COLOR: #000000">&amp;</span><span style="COLOR: #000000">id</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>URL_PATHINFO&nbsp;</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #008080">PATHINFO</span><span style="COLOR: #000000">&nbsp;模式，例如&nbsp;index</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">php</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">Login</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">Reject</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">id</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>URL_REWRITE&nbsp;</span><span style="COLOR: #000000">-</span><span style="COLOR: #000000">&nbsp;URL&nbsp;重写模式，例如&nbsp;</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">Login</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">Reject</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">id</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>生成的&nbsp;url&nbsp;地址，还要受下列应用程序设置的影响：&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>controllerAccessor&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>defaultController&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>actionAccessor&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>defaultAction&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>urlMode&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>urlLowerChar&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>用法：&nbsp;</span><span style="COLOR: #800080">$url</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;url(</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">Login</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">checkUser</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">);&nbsp;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">&nbsp;$url&nbsp;现在为&nbsp;?controller=Login&amp;action=checkUser&nbsp;</span><span style="COLOR: #008000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #800080">$url</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;url(</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">Login</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">checkUser</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">array</span><span style="COLOR: #000000">(</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">username</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">dualface</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">));&nbsp;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">&nbsp;$url&nbsp;现在为&nbsp;controller=Login&amp;action=checkUser&amp;username=dualface&nbsp;</span><span style="COLOR: #008000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #800080">$url</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;url(</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">Article</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">View</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">array</span><span style="COLOR: #000000">(</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">id</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">),&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">details</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">);&nbsp;//&nbsp;$url&nbsp;现在为&nbsp;controller=Article&amp;action=View&amp;id=1details&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>36.redirect()<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>这个函数很好，不过鄙人只用了他的基本用法<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>例如：redirect(../index.php);回到入口文件；<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;redirect(url(</span><span style="COLOR: #000000">'</span><span style="COLOR: #0000ff">default</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">zhx</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">));<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>就是这么用的，反正好用，呵呵<img src="http://www.phpweblog.net/Images/dot.gif">还有一个常用的就是，如果再加入个参数，就可以实现几秒后跳转，就是在URL（）的后面加入一个数子就行，大家知道有这个功能会用就行了<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>37。FLEA::loadFile&nbsp;（$filename,$loadonce=false）<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>用途：载入指定的文件&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>例如:&nbsp;FLEA::loadFile&nbsp;(</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">Table_Posts</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">php</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">);&nbsp;//&nbsp;等同于&nbsp;include&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">Table</span><span style="COLOR: #000000">/</span><span style="COLOR: #000000">Posts</span><span style="COLOR: #000000">.</span><span style="COLOR: #000000">php</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">;&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$loadOnce&nbsp;指定为&nbsp;true&nbsp;时，FLEAloadFile()&nbsp;等同于&nbsp;require_once<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>38.FLEA_Helper_ImgCode::image&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>下面给大家看展示一个很常用的函数,生成验证码的image(),下面看例子:<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&lt;?php<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>FLEA::loadClass(</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">FLEA_Helper_ImgCode</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>class&nbsp;Model_code&nbsp;extends&nbsp;FLEA_Helper_ImgCode&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>{<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>}<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>?&gt;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>我先在MODEL中创建了一个类,这个类没有内容,没有内容为什么还要创建呢,这是因为要让这个函数继承FLEA_Helper_ImgCode&nbsp;的强大功能啊,image()这个函数就在这个类里面.好了下面我们在控制器中写下面的语句:<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>$this-&gt;imgcode&nbsp;=&amp;&nbsp;FLEA::getSingleton(</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">Model_code</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>$this-&gt;imgcode-&gt;image();<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>好了,这时运行就会在浏览器中输入随机的四位验证码了,当然四们是默认的,你也可以设为五位,六位了.请看参数依次为:<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>int&nbsp;$type&nbsp;验证码包含的字符类型，0&nbsp;-&nbsp;数字、1&nbsp;-&nbsp;字母、其他值&nbsp;-&nbsp;数字和字母&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>int&nbsp;$length&nbsp;验证码长度&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>int&nbsp;$leftime&nbsp;验证码有效时间（秒）&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>array&nbsp;$options&nbsp;附加选项，可以指定字体、宽度和高度等参数<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>39.FLEA_Helper_ImgCode::_hex2rgb&nbsp;()&nbsp;用途:将&nbsp;16&nbsp;进制颜色值转换为&nbsp;rgb&nbsp;值<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>这个函数可能不常用,但看到了也一起写上来了<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>用时也要创建一个例38那样的空类继承FLEA_Helper_ImgCode<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>然后在控制器中这样写:<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>例如$this-&gt;imgcode&nbsp;=&amp;&nbsp;FLEA::getSingleton(</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">Model_code</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$this-&gt;imgcode-&gt;_hex2rgb(</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">ff00ff</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>这时就会把16进制的ff00ff的颜色值转换为RGB值勤了<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>注意:因为RGB值是三个三位的,所以返回的是一个数组要用定义的数级变量接收<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>40.microtime_float()这个很常用,但很简单,写在这里的目的是为了让大家了解FLEAPHP中的这个microtime_float()和PHP5中mktime()的区别:<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>mktime()返回的包含了从&nbsp;Unix&nbsp;纪元（January&nbsp;1&nbsp;1970&nbsp;00:00:00&nbsp;GMT）到给定时间的秒数,而microtime_float()返回的是毫秒数,返回值是浮点数.<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span></div><img src ="http://www.phpweblog.net/fuyongjie/aggbug/5959.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.phpweblog.net/fuyongjie/" target="_blank">bestmost</a> 2008-10-20 11:51 <a href="http://www.phpweblog.net/fuyongjie/archive/2008/10/20/5959.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>使用 PATHINFO 时 css 和 images 文件的路径问题的解决方案</title><link>http://www.phpweblog.net/fuyongjie/archive/2008/09/18/5806.html</link><dc:creator>bestmost</dc:creator><author>bestmost</author><pubDate>Thu, 18 Sep 2008 08:09:00 GMT</pubDate><guid>http://www.phpweblog.net/fuyongjie/archive/2008/09/18/5806.html</guid><wfw:comment>http://www.phpweblog.net/fuyongjie/comments/5806.html</wfw:comment><comments>http://www.phpweblog.net/fuyongjie/archive/2008/09/18/5806.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.phpweblog.net/fuyongjie/comments/commentRss/5806.html</wfw:commentRss><trackback:ping>http://www.phpweblog.net/fuyongjie/services/trackbacks/5806.html</trackback:ping><description><![CDATA[<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><span style="color: #000000;">方法1：<br>HTML页<br></span><span style="color: #000000;">&lt;</span><span style="color: #000000;">base&nbsp;href</span><span style="color: #000000;">=</span><span style="color: #000000;">"</span><span style="color: #000000;">&lt;?=ROOT_URL?&gt;</span><span style="color: #000000;">"</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">/&gt;</span><span style="color: #000000;">&nbsp;&nbsp;(index</span><span style="color: #000000;">.</span><span style="color: #000000;">php&nbsp;设定站点根目录如</span><span style="color: #000000;">:</span><span style="color: #008080;">define</span><span style="color: #000000;">(</span><span style="color: #000000;">'</span><span style="color: #000000;">ROOT_URL</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">http://localhost/fzbk/mysite/</span><span style="color: #000000;">'</span><span style="color: #000000;">);注意最后一个</span><span style="color: #000000;">"</span><span style="color: #000000;">/</span><span style="color: #000000;">"</span><span style="color: #000000;">)<br></span><span style="color: #000000;">&lt;</span><span style="color: #000000;">link&nbsp;href</span><span style="color: #000000;">=</span><span style="color: #000000;">"</span><span style="color: #000000;">css/base.css</span><span style="color: #000000;">"</span><span style="color: #000000;">&nbsp;rel</span><span style="color: #000000;">=</span><span style="color: #000000;">"</span><span style="color: #000000;">stylesheet</span><span style="color: #000000;">"</span><span style="color: #000000;">&nbsp;type</span><span style="color: #000000;">=</span><span style="color: #000000;">"</span><span style="color: #000000;">text/css</span><span style="color: #000000;">"</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">/&gt;</span><span style="color: #000000;">(页面内路径都可以用</span><span style="color: #000000;">"</span><span style="color: #000000;">相对</span><span style="color: #000000;">"</span><span style="color: #000000;">的了)<br><br>自己机子上通过</span><span style="color: #000000;">,</span><span style="color: #000000;">大家可以试试</span><span style="color: #000000;">,</span><span style="color: #000000;">还可以节省代码长度</span></div>
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #000000;"></span><span style="color: #000000;"><br>方法2：<br><br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">1</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">&nbsp;定义网站文件系统根目录&nbsp;&nbsp;</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">2</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #008080;">define</span><span style="color: #000000;">(</span><span style="color: #000000;">'</span><span style="color: #000000;">SYS_ROOT</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #008080;">realpath</span><span style="color: #000000;">(</span><span style="color: #008080;">dirname</span><span style="color: #000000;">(</span><span style="color: #ff00ff;">__FILE__</span><span style="color: #000000;">)</span><span style="color: #000000;">.</span><span style="color: #000000;">"</span><span style="color: #000000;">/../system</span><span style="color: #000000;">"</span><span style="color: #000000;">));&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">3</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">&nbsp;定义当前网站URL根目录,这样可以在Smarty中使用绝对路径包含js,css和图片,方便URL重写&nbsp;&nbsp;</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">4</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #008080;">define</span><span style="color: #000000;">(</span><span style="color: #000000;">'</span><span style="color: #000000;">HTTP_DIR</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #000000;">'</span><span style="color: #000000;">http://</span><span style="color: #000000;">'</span><span style="color: #000000;">.</span><span style="color: #800080;">$_SERVER</span><span style="color: #000000;">[</span><span style="color: #000000;">"</span><span style="color: #000000;">SERVER_NAME</span><span style="color: #000000;">"</span><span style="color: #000000;">]</span><span style="color: #000000;">.</span><span style="color: #008080;">preg_replace</span><span style="color: #000000;">(</span><span style="color: #000000;">"</span><span style="color: #000000;">/^(.*?)\/(.[^\/]*?).php$/</span><span style="color: #000000;">"</span><span style="color: #000000;">,</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">\\1</span><span style="color: #000000;">"</span><span style="color: #000000;">,</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$_SERVER</span><span style="color: #000000;">[</span><span style="color: #000000;">"</span><span style="color: #000000;">PHP_SELF</span><span style="color: #000000;">"</span><span style="color: #000000;">])&nbsp;);&nbsp;&nbsp;<br><br></span><span style="color: #008000;">//</span><span style="color: #008000;">&nbsp;定义网站文件系统根目录</span><span style="color: #008000;"><br></span><span style="color: #008080;">define</span><span style="color: #000000;">(</span><span style="color: #000000;">'</span><span style="color: #000000;">SYS_ROOT</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #008080;">realpath</span><span style="color: #000000;">(</span><span style="color: #008080;">dirname</span><span style="color: #000000;">(</span><span style="color: #ff00ff;">__FILE__</span><span style="color: #000000;">)</span><span style="color: #000000;">.</span><span style="color: #000000;">"</span><span style="color: #000000;">/../system</span><span style="color: #000000;">"</span><span style="color: #000000;">));<br></span><span style="color: #008000;">//</span><span style="color: #008000;">&nbsp;定义当前网站URL根目录,这样可以在Smarty中使用绝对路径包含js,css和图片,方便URL重写</span><span style="color: #008000;"><br></span><span style="color: #008080;">define</span><span style="color: #000000;">(</span><span style="color: #000000;">'</span><span style="color: #000000;">HTTP_DIR</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #000000;">'</span><span style="color: #000000;">http://</span><span style="color: #000000;">'</span><span style="color: #000000;">.</span><span style="color: #800080;">$_SERVER</span><span style="color: #000000;">[</span><span style="color: #000000;">"</span><span style="color: #000000;">SERVER_NAME</span><span style="color: #000000;">"</span><span style="color: #000000;">]</span><span style="color: #000000;">.</span><span style="color: #008080;">preg_replace</span><span style="color: #000000;">(</span><span style="color: #000000;">"</span><span style="color: #000000;">/^(.*?)\/(.[^\/]*?).php$/</span><span style="color: #000000;">"</span><span style="color: #000000;">,</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">\\1</span><span style="color: #000000;">"</span><span style="color: #000000;">,</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$_SERVER</span><span style="color: #000000;">[</span><span style="color: #000000;">"</span><span style="color: #000000;">PHP_SELF</span><span style="color: #000000;">"</span><span style="color: #000000;">])&nbsp;);<br><br>这两个常量定义我是每个index</span><span style="color: #000000;">.</span><span style="color: #000000;">php都有的，<br><br>在smarty中，可以通过&nbsp;{{</span><span style="color: #800080;">$smarty</span><span style="color: #000000;">.</span><span style="color: #0000ff;">const</span><span style="color: #000000;">.</span><span style="color: #000000;">HTTP_DIR}}&nbsp;的绝对路径的方式调用网址，<br></span><span style="color: #000000;"><br></span></div>
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #000000;">&nbsp;&nbsp; 1.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">link&nbsp;</span><span style="color: #ff0000;">rel</span><span style="color: #0000ff;">="icon"</span><span style="color: #ff0000;">&nbsp;href</span><span style="color: #0000ff;">="{{$smarty.const.HTTP_DIR}}/favicon.ico"</span><span style="color: #ff0000;">&nbsp;type</span><span style="color: #0000ff;">="image/x-icon"</span><span style="color: #ff0000;">&nbsp;</span><span style="color: #0000ff;">/&gt;</span><span style="color: #000000;">&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;2.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">link&nbsp;</span><span style="color: #ff0000;">rel</span><span style="color: #0000ff;">="shortcut&nbsp;icon"</span><span style="color: #ff0000;">&nbsp;href</span><span style="color: #0000ff;">="{{$smarty.const.HTTP_DIR}}/favicon.ico"</span><span style="color: #ff0000;">&nbsp;type</span><span style="color: #0000ff;">="image/x-icon"</span><span style="color: #ff0000;">&nbsp;</span><span style="color: #0000ff;">/&gt;</span><span style="color: #000000;">&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;3.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">link&nbsp;</span><span style="color: #ff0000;">rel</span><span style="color: #0000ff;">="stylesheet"</span><span style="color: #ff0000;">&nbsp;href</span><span style="color: #0000ff;">="{{$smarty.const.HTTP_DIR}}/css/screen.css"</span><span style="color: #ff0000;">&nbsp;type</span><span style="color: #0000ff;">="text/css"</span><span style="color: #ff0000;">&nbsp;media</span><span style="color: #0000ff;">="screen,&nbsp;projection"</span><span style="color: #ff0000;">&nbsp;</span><span style="color: #0000ff;">/&gt;</span><span style="color: #000000;">&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;4.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">link&nbsp;</span><span style="color: #ff0000;">rel</span><span style="color: #0000ff;">="stylesheet"</span><span style="color: #ff0000;">&nbsp;href</span><span style="color: #0000ff;">="{{$smarty.const.HTTP_DIR}}/css/print.css"</span><span style="color: #ff0000;">&nbsp;type</span><span style="color: #0000ff;">="text/css"</span><span style="color: #ff0000;">&nbsp;media</span><span style="color: #0000ff;">="print"</span><span style="color: #ff0000;">&nbsp;</span><span style="color: #0000ff;">/&gt;</span><span style="color: #000000;">&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;5.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">&lt;!--</span><span style="color: #008000;">[if&nbsp;IE]&gt;&lt;link&nbsp;rel="stylesheet"&nbsp;href="{{$smarty.const.HTTP_DIR}}/css/ie.css"&nbsp;type="text/css"&nbsp;media="screen,&nbsp;projection"&nbsp;/&gt;&lt;![endif]</span><span style="color: #008000;">--&gt;</span><span style="color: #000000;">&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;6.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">link&nbsp;</span><span style="color: #ff0000;">rel</span><span style="color: #0000ff;">="stylesheet"</span><span style="color: #ff0000;">&nbsp;href</span><span style="color: #0000ff;">="{{$smarty.const.HTTP_DIR}}/css/plugins/fancy-type/screen.css"</span><span style="color: #ff0000;">&nbsp;type</span><span style="color: #0000ff;">="text/css"</span><span style="color: #ff0000;">&nbsp;media</span><span style="color: #0000ff;">="screen,&nbsp;projection"</span><span style="color: #ff0000;">&nbsp;</span><span style="color: #0000ff;">/&gt;</span><span style="color: #000000;">&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;7.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">script&nbsp;</span><span style="color: #ff0000;">type</span><span style="color: #0000ff;">="text/javascript"</span><span style="color: #ff0000;">&nbsp;language</span><span style="color: #0000ff;">="JavaScript"</span><span style="color: #ff0000;">&nbsp;src</span><span style="color: #0000ff;">="{{$smarty.const.HTTP_DIR}}/js/jquery-1.2.6.pack.js"</span><span style="color: #0000ff;">&gt;&lt;/</span><span style="color: #800000;">script</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;">&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;8.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">script&nbsp;</span><span style="color: #ff0000;">type</span><span style="color: #0000ff;">="text/javascript"</span><span style="color: #ff0000;">&nbsp;language</span><span style="color: #0000ff;">="JavaScript"</span><span style="color: #ff0000;">&nbsp;src</span><span style="color: #0000ff;">="{{$smarty.const.HTTP_DIR}}/js/dom.js"</span><span style="color: #0000ff;">&gt;&lt;/</span><span style="color: #800000;">script</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;">&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;9.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">script&nbsp;</span><span style="color: #ff0000;">type</span><span style="color: #0000ff;">="text/javascript"</span><span style="color: #ff0000;">&nbsp;language</span><span style="color: #0000ff;">="JavaScript"</span><span style="color: #ff0000;">&nbsp;src</span><span style="color: #0000ff;">="{{$smarty.const.HTTP_DIR}}/js/jquery.form.js"</span><span style="color: #ff0000;">&nbsp;</span><span style="color: #0000ff;">&gt;&lt;/</span><span style="color: #800000;">script</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;">&nbsp;&nbsp;<br>&nbsp;&nbsp;10.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">script&nbsp;</span><span style="color: #ff0000;">type</span><span style="color: #0000ff;">="t</span></div>
<br><img src ="http://www.phpweblog.net/fuyongjie/aggbug/5806.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.phpweblog.net/fuyongjie/" target="_blank">bestmost</a> 2008-09-18 16:09 <a href="http://www.phpweblog.net/fuyongjie/archive/2008/09/18/5806.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>fleaphp 防刷新的的写法，关掉原有页面（小技巧）（ 遨游不行）</title><link>http://www.phpweblog.net/fuyongjie/archive/2008/09/17/5790.html</link><dc:creator>bestmost</dc:creator><author>bestmost</author><pubDate>Wed, 17 Sep 2008 06:49:00 GMT</pubDate><guid>http://www.phpweblog.net/fuyongjie/archive/2008/09/17/5790.html</guid><wfw:comment>http://www.phpweblog.net/fuyongjie/comments/5790.html</wfw:comment><comments>http://www.phpweblog.net/fuyongjie/archive/2008/09/17/5790.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.phpweblog.net/fuyongjie/comments/commentRss/5790.html</wfw:commentRss><trackback:ping>http://www.phpweblog.net/fuyongjie/services/trackbacks/5790.html</trackback:ping><description><![CDATA[<p>&nbsp;</p>
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">function</span><span style="COLOR: #000000">&nbsp;actionRegistSave()&nbsp;{</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">保存注册用户信息</span><span style="COLOR: #008000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$this</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">_member</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">mRegistsave();<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;js_alert(</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">保存成功</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">window.close()</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">,</span><span style="COLOR: #800080">$_SERVER</span><span style="COLOR: #000000">[</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">HTTP_REFERER</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">]);</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">防刷新的的写法，关掉原有页面</span><span style="COLOR: #008000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;}</span></div><img src ="http://www.phpweblog.net/fuyongjie/aggbug/5790.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.phpweblog.net/fuyongjie/" target="_blank">bestmost</a> 2008-09-17 14:49 <a href="http://www.phpweblog.net/fuyongjie/archive/2008/09/17/5790.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>fleaphp下不确定的多条件查询的巧妙方法</title><link>http://www.phpweblog.net/fuyongjie/archive/2008/09/10/5740.html</link><dc:creator>bestmost</dc:creator><author>bestmost</author><pubDate>Tue, 09 Sep 2008 16:12:00 GMT</pubDate><guid>http://www.phpweblog.net/fuyongjie/archive/2008/09/10/5740.html</guid><wfw:comment>http://www.phpweblog.net/fuyongjie/comments/5740.html</wfw:comment><comments>http://www.phpweblog.net/fuyongjie/archive/2008/09/10/5740.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.phpweblog.net/fuyongjie/comments/commentRss/5740.html</wfw:commentRss><trackback:ping>http://www.phpweblog.net/fuyongjie/services/trackbacks/5740.html</trackback:ping><description><![CDATA[<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000">问题：例如，实现如下<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #800080">$data</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">array</span><span style="COLOR: #000000">(<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">id</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #800080">$_POST</span><span style="COLOR: #000000">[</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">id1</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">]</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">name</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #800080">$_POST</span><span style="COLOR: #000000">[</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">name1</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">]<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;);&nbsp;&nbsp;&nbsp;&nbsp;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$posts</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #800080">$this</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">_modelstudent</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">findAll(</span><span style="COLOR: #800080">$data</span><span style="COLOR: #000000">);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>页面上有&nbsp;id&nbsp;name&nbsp;的文本框&nbsp;可输入ID查询&nbsp;也可输入NAME查询&nbsp;也可同时输入查询&nbsp;；<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>解决：写循环做判断<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;例子如下：<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #800080">$conditions</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">null</span><span style="COLOR: #000000">;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #800080">$fields</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">array</span><span style="COLOR: #000000">(</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">id</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">name</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">sex</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">,</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">phone</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">foreach</span><span style="COLOR: #000000">(</span><span style="COLOR: #800080">$fields</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #0000ff">as</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #800080">$each</span><span style="COLOR: #000000">)&nbsp;{<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000">(</span><span style="COLOR: #000000">!</span><span style="COLOR: #0000ff">empty</span><span style="COLOR: #000000">(</span><span style="COLOR: #800080">$_POST</span><span style="COLOR: #000000">[</span><span style="COLOR: #800080">$each</span><span style="COLOR: #000000">]))&nbsp;{<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000">(</span><span style="COLOR: #800080">$conditions</span><span style="COLOR: #000000">)&nbsp;{<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$conditions</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">.=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">&nbsp;AND&nbsp;{$each}={$_POST[$each]}</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;</span><span style="COLOR: #0000ff">else</span><span style="COLOR: #000000">&nbsp;{<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$conditions</span><span style="COLOR: #000000">&nbsp;&nbsp;</span><span style="COLOR: #000000">.=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">{$each}={$_POST[$each]}</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;}<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>}</span></div><img src ="http://www.phpweblog.net/fuyongjie/aggbug/5740.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.phpweblog.net/fuyongjie/" target="_blank">bestmost</a> 2008-09-10 00:12 <a href="http://www.phpweblog.net/fuyongjie/archive/2008/09/10/5740.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>FleaPHP的安全讨论</title><link>http://www.phpweblog.net/fuyongjie/archive/2008/09/09/5737.html</link><dc:creator>bestmost</dc:creator><author>bestmost</author><pubDate>Tue, 09 Sep 2008 13:59:00 GMT</pubDate><guid>http://www.phpweblog.net/fuyongjie/archive/2008/09/09/5737.html</guid><wfw:comment>http://www.phpweblog.net/fuyongjie/comments/5737.html</wfw:comment><comments>http://www.phpweblog.net/fuyongjie/archive/2008/09/09/5737.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.phpweblog.net/fuyongjie/comments/commentRss/5737.html</wfw:commentRss><trackback:ping>http://www.phpweblog.net/fuyongjie/services/trackbacks/5737.html</trackback:ping><description><![CDATA[<h2>FleaPHP的安全讨论</h2>
<div class=t_msgfont>关于访问fleaphp的MC层文件导致暴露网站目录的安全防范讨论。<br><br>前提条件：<br></div>
<div class=t_msgfont>
<ul type=1>
    <li>虚拟机，无法将fleaphp文件夹放在http无法访问的路径，无法修改apache和php的配置文件。
    <li>fleaphp使用默认配置</li>
</ul>
</div>
<p>方法：<br><br>1。controller文件夹 放在根目录外 （此种办法只能适合自己有服务器）<br>2。在controller的文件里,尽量不要显式输出如echo print等<br>3。隐藏controller目录 如取个类似密码的文件夹sdfsdf12312SDCVd/Flea<br>4，通过配置文件更改默认CMT的目录名称<br>5.在根目录下面放一个.htaccess用于禁止某些目录的访问权限（只适合apache服务器）<br>6 在无法修改任何配置文件的情况下除了index.php外,所有的MVC层文件都在最前加上<br>defined('APP_DIR') or&nbsp;&nbsp;header("HTTP/1.0 404 Not Found");并<span style="COLOR: red">且'APP_DIR'最好改成不易猜到的名字<br>7.<font color=#000000>在目录内 放置一个空的 index.htm 文件，也是防止目录泄露的办法之一。</font><br><span style="COLOR: #040000">8、</span></p>
<div class=t_msgfont id=postmessage_13656 style="COLOR: #040000">function FLEA_Exception($message = null, $code = 0)<br>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;{<br>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$this-&gt;message = $message;<br>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$this-&gt;code = $code;<br>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$this-&gt;trac = debug_backtrace();<br><br>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;// 取得抛出异常的文件和代码行号<br>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$last = array_shift($this-&gt;trac);<br>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$this-&gt;file = $last['file'];<br>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$this-&gt;line = $last['line'];<br>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;}<br>这是FLEA处理异常class FLEA_Exception的构造函数.我的个人想法，可以在程序挂上去的时候改<br>// 取得抛出异常的文件和代码行号<br>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$last = array_shift($this-&gt;trac);<br>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$this-&gt;file = $last['file'];<br>&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;$this-&gt;line = $last['line'];<br>这部分</div>
</span><img src ="http://www.phpweblog.net/fuyongjie/aggbug/5737.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.phpweblog.net/fuyongjie/" target="_blank">bestmost</a> 2008-09-09 21:59 <a href="http://www.phpweblog.net/fuyongjie/archive/2008/09/09/5737.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>cookie登录讨论 </title><link>http://www.phpweblog.net/fuyongjie/archive/2008/09/05/5716.html</link><dc:creator>bestmost</dc:creator><author>bestmost</author><pubDate>Fri, 05 Sep 2008 13:41:00 GMT</pubDate><guid>http://www.phpweblog.net/fuyongjie/archive/2008/09/05/5716.html</guid><wfw:comment>http://www.phpweblog.net/fuyongjie/comments/5716.html</wfw:comment><comments>http://www.phpweblog.net/fuyongjie/archive/2008/09/05/5716.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.phpweblog.net/fuyongjie/comments/commentRss/5716.html</wfw:commentRss><trackback:ping>http://www.phpweblog.net/fuyongjie/services/trackbacks/5716.html</trackback:ping><description><![CDATA[<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #000000;">cookie登录讨论<br>网站上关于cookie的讨论很少，不知道大家平时是怎么使用cookie的，<br>如果只要保存用户名和密码，我是这样做的，<br></span><span style="color: #000000;">１</span><span style="color: #000000;">，登录的时候，在setUser之后，如果没有检测到cookie，那用明文保存username，用mcrypt_encrypt保存密码，<br></span><span style="color: #000000;">２</span><span style="color: #000000;">，如果Session失效，默认会调用onDispatcherAuthFailedCallback，这时候，如果能检测到cookie，那把密码解密后调用原来的登录函数，如果没有检测到cookie，那重定向到某个任何人都能访问的页面。<br><br>如果大家有什么更好的办法，还望不吝赐教。<br><br>下面是入口文件中的onDispatcherAuthFailedCallback函数，<br>view&nbsp;plaincopy&nbsp;to&nbsp;clipboardprint</span><span style="color: #000000;">?</span><span style="color: #000000;"><br><br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">1</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">function</span><span style="color: #000000;">&nbsp;onDispatcherAuthFailedCallback(</span><span style="color: #800080;">$controller</span><span style="color: #000000;">,</span><span style="color: #800080;">$action</span><span style="color: #000000;">){&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">2</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">if</span><span style="color: #000000;">&nbsp;(</span><span style="color: #0000ff;">isset</span><span style="color: #000000;">(</span><span style="color: #800080;">$_COOKIE</span><span style="color: #000000;">[</span><span style="color: #000000;">'</span><span style="color: #000000;">username</span><span style="color: #000000;">'</span><span style="color: #000000;">])&nbsp;</span><span style="color: #000000;">&amp;&amp;</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">isset</span><span style="color: #000000;">(</span><span style="color: #800080;">$_COOKIE</span><span style="color: #000000;">[</span><span style="color: #000000;">'</span><span style="color: #000000;">password</span><span style="color: #000000;">'</span><span style="color: #000000;">]))&nbsp;{&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">3</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">&nbsp;得到Cookie中的信息&nbsp;&nbsp;</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">4</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$iv_size</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256</span><span style="color: #000000;">,</span><span style="color: #000000;">&nbsp;MCRYPT_MODE_ECB);&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">5</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$iv</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;mcrypt_create_iv(</span><span style="color: #800080;">$iv_size</span><span style="color: #000000;">,</span><span style="color: #000000;">&nbsp;MCRYPT_RAND);&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">6</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$key</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">This&nbsp;is&nbsp;a&nbsp;very&nbsp;secret&nbsp;key</span><span style="color: #000000;">"</span><span style="color: #000000;">;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">7</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$decryptPassword</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;mcrypt_decrypt(MCRYPT_RIJNDAEL_256</span><span style="color: #000000;">,</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$key</span><span style="color: #000000;">,</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$_COOKIE</span><span style="color: #000000;">[</span><span style="color: #000000;">'</span><span style="color: #000000;">password</span><span style="color: #000000;">'</span><span style="color: #000000;">]</span><span style="color: #000000;">,</span><span style="color: #000000;">&nbsp;MCRYPT_MODE_ECB</span><span style="color: #000000;">,</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$iv</span><span style="color: #000000;">);&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">8</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$userInfo</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">array</span><span style="color: #000000;">(</span><span style="color: #000000;">'</span><span style="color: #000000;">username</span><span style="color: #000000;">'</span><span style="color: #000000;">=&gt;</span><span style="color: #800080;">$_COOKIE</span><span style="color: #000000;">[</span><span style="color: #000000;">'</span><span style="color: #000000;">username</span><span style="color: #000000;">'</span><span style="color: #000000;">]</span><span style="color: #000000;">,</span><span style="color: #000000;">'</span><span style="color: #000000;">password</span><span style="color: #000000;">'</span><span style="color: #000000;">=&gt;</span><span style="color: #008080;">trim</span><span style="color: #000000;">(</span><span style="color: #800080;">$decryptPassword</span><span style="color: #000000;">));&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">9</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$modelUser</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=&amp;</span><span style="color: #000000;">&nbsp;FLEA</span><span style="color: #000000;">::</span><span style="color: #000000;">getSingleton(</span><span style="color: #000000;">'</span><span style="color: #000000;">Model_Admin_Users</span><span style="color: #000000;">'</span><span style="color: #000000;">);&nbsp;&nbsp;<br>&nbsp;&nbsp;</span><span style="color: #000000;">10</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">/*</span><span style="color: #008000;">&nbsp;@var&nbsp;$modelUser&nbsp;Model_Admin_Users&nbsp;</span><span style="color: #008000;">*/</span><span style="color: #000000;">&nbsp;&nbsp;<br>&nbsp;&nbsp;</span><span style="color: #000000;">11</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$modelUser</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">handleUser(</span><span style="color: #800080;">$userInfo</span><span style="color: #000000;">);&nbsp;&nbsp;<br>&nbsp;&nbsp;</span><span style="color: #000000;">12</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;redirect(</span><span style="color: #800080;">$_SERVER</span><span style="color: #000000;">[</span><span style="color: #000000;">'</span><span style="color: #000000;">HTTP_REFERER</span><span style="color: #000000;">'</span><span style="color: #000000;">]);&nbsp;&nbsp;<br>&nbsp;&nbsp;</span><span style="color: #000000;">13</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}</span><span style="color: #0000ff;">else</span><span style="color: #000000;">&nbsp;{&nbsp;&nbsp;<br>&nbsp;&nbsp;</span><span style="color: #000000;">14</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;redirect(url(</span><span style="color: #000000;">'</span><span style="color: #000000;">User_Default</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #000000;">'</span><span style="color: #000000;">Index</span><span style="color: #000000;">'</span><span style="color: #000000;">));&nbsp;&nbsp;<br>&nbsp;&nbsp;</span><span style="color: #000000;">15</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;<br>&nbsp;&nbsp;</span><span style="color: #000000;">16</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;}&nbsp;&nbsp;</span></div>
<br><img src ="http://www.phpweblog.net/fuyongjie/aggbug/5716.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.phpweblog.net/fuyongjie/" target="_blank">bestmost</a> 2008-09-05 21:41 <a href="http://www.phpweblog.net/fuyongjie/archive/2008/09/05/5716.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>通过鼠标定位和html元素坐标及宽高实现对ajax层的隐藏与显示</title><link>http://www.phpweblog.net/fuyongjie/archive/2008/08/25/5653.html</link><dc:creator>bestmost</dc:creator><author>bestmost</author><pubDate>Mon, 25 Aug 2008 01:29:00 GMT</pubDate><guid>http://www.phpweblog.net/fuyongjie/archive/2008/08/25/5653.html</guid><wfw:comment>http://www.phpweblog.net/fuyongjie/comments/5653.html</wfw:comment><comments>http://www.phpweblog.net/fuyongjie/archive/2008/08/25/5653.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.phpweblog.net/fuyongjie/comments/commentRss/5653.html</wfw:commentRss><trackback:ping>http://www.phpweblog.net/fuyongjie/services/trackbacks/5653.html</trackback:ping><description><![CDATA[共享一个例子：（折腾了我3个多小时呀，我这里只展示了部分功能）<br><span style="color: #ffffff;">来自：</span><a style="color: #ffffff;" href="http://www.phpweblog.net/fuyongjie/admin/EditPosts.aspx?postid=5653">http://www.phpweblog.net/fuyongjie/admin/EditPosts.aspx?postid=5653
</a><br>功能：<br>&nbsp;&nbsp;&nbsp; 鼠标经过img通过ajax异步生成一个层(如：ajax_famous3），鼠标移开img但不悬浮在ajax_famous3层上，则ajax_famous3隐藏,若悬浮在了ajax_famous3上，该层不隐藏，当鼠标又移开ajax_famous3时，ajax_famous3又隐藏了<br><br>
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #0000ff;">1.JS代码：<br>
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #0000ff;">function</span><span style="color: #000000;">&nbsp;ajax_post(id)&nbsp;{<br></span><span style="color: #008000;">//</span><span style="color: #008000;">alert(id);</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;showDiv(</span><span style="color: #000000;">"</span><span style="color: #000000;">famous</span><span style="color: #000000;">"</span><span style="color: #000000;">+</span><span style="color: #000000;">id);<br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">if</span><span style="color: #000000;">(document</span><span style="color: #000000;">.</span><span style="color: #000000;">getElementById(</span><span style="color: #000000;">"</span><span style="color: #000000;">ajax_famous</span><span style="color: #000000;">"</span><span style="color: #000000;">+</span><span style="color: #000000;">id))&nbsp;{</span><span style="color: #008000;">//</span><span style="color: #008000;">如果已经Ajax过了,就不再去Ajax</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;showDiv(</span><span style="color: #000000;">"</span><span style="color: #000000;">ajax_famous</span><span style="color: #000000;">"</span><span style="color: #000000;">+</span><span style="color: #000000;">id);<br>&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;</span><span style="color: #0000ff;">else</span><span style="color: #000000;">&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;loading&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">div[@name=loading</span><span style="color: #000000;">"</span><span style="color: #000000;">+</span><span style="color: #000000;">id</span><span style="color: #000000;">+</span><span style="color: #000000;">"</span><span style="color: #000000;">]</span><span style="color: #000000;">"</span><span style="color: #000000;">;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$</span><span style="color: #000000;">.</span><span style="color: #000000;">ajax({<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;type</span><span style="color: #000000;">:</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">get</span><span style="color: #000000;">"</span><span style="color: #000000;">,</span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;url</span><span style="color: #000000;">:</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">{{url&nbsp;c=Post&nbsp;a=ACompanyPosts}}</span><span style="color: #000000;">"</span><span style="color: #000000;">,</span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;data</span><span style="color: #000000;">:</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">member_id=</span><span style="color: #000000;">"</span><span style="color: #000000;">+</span><span style="color: #000000;">id</span><span style="color: #000000;">,</span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;beforeSend</span><span style="color: #000000;">:</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">function</span><span style="color: #000000;">(){$(loading)</span><span style="color: #000000;">.</span><span style="color: #000000;">show()}</span><span style="color: #000000;">,</span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>success: function(a){if(document.getElementById("ajax_famous"+id)){return false;}else{$("#famous"+id).append(a)}}//再次确保前面没有ajax过 ,<span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;complete</span><span style="color: #000000;">:</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">function</span><span style="color: #000000;">(){$(loading)</span><span style="color: #000000;">.</span><span style="color: #000000;">hide()}&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;})<br>&nbsp;&nbsp;&nbsp;&nbsp;}<br>&nbsp;&nbsp;&nbsp;&nbsp;<br>}<br></span></div>
<br><br><br>function</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;getAbsPoint(e)&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">e为元素对象,获得此元素的左上角坐标(x,y)和宽、高</span><span style="color: #008000;"><br></span><span style="color: #000000;">{&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">var</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;x&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;e</span><span style="color: #000000;">.</span><span style="color: #000000;">offsetLeft</span><span style="color: #000000;">,</span><span style="color: #000000;">&nbsp;y&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;e</span><span style="color: #000000;">.</span><span style="color: #000000;">offsetTop</span><span style="color: #000000;">,</span><span style="color: #000000;">h&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;e</span><span style="color: #000000;">.</span><span style="color: #000000;">clientHeight</span><span style="color: #000000;">,</span><span style="color: #000000;">w&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;e</span><span style="color: #000000;">.</span><span style="color: #000000;">clientWidth;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">while</span><span style="color: #000000;">(e</span><span style="color: #000000;">=</span><span style="color: #000000;">e</span><span style="color: #000000;">.</span><span style="color: #000000;">offsetParent)<br>&nbsp;&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;x&nbsp;</span><span style="color: #000000;">+=</span><span style="color: #000000;">&nbsp;e</span><span style="color: #000000;">.</span><span style="color: #000000;">offsetLeft;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;y&nbsp;</span><span style="color: #000000;">+=</span><span style="color: #000000;">&nbsp;e</span><span style="color: #000000;">.</span><span style="color: #000000;">offsetTop;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">&nbsp;h&nbsp;+=&nbsp;e.clientHeight;</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;}<br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">document.getElementById('x').<br>&nbsp;&nbsp;&nbsp;&nbsp;//$("#x").val(x+","+(x+w));<br>&nbsp;&nbsp;&nbsp;&nbsp;//$("#y").val(y+","+(y+h));</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">var</span><span style="color: #000000;">&nbsp;ePoint&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;{</span><span style="color: #000000;">"</span><span style="color: #000000;">l</span><span style="color: #000000;">"</span><span style="color: #000000;">:</span><span style="color: #000000;">x</span><span style="color: #000000;">,</span><span style="color: #000000;">"</span><span style="color: #000000;">t</span><span style="color: #000000;">"</span><span style="color: #000000;">:</span><span style="color: #000000;">y</span><span style="color: #000000;">,</span><span style="color: #000000;">"</span><span style="color: #000000;">h</span><span style="color: #000000;">"</span><span style="color: #000000;">:</span><span style="color: #000000;">h</span><span style="color: #000000;">,</span><span style="color: #000000;">"</span><span style="color: #000000;">w</span><span style="color: #000000;">"</span><span style="color: #000000;">:</span><span style="color: #000000;">w};<br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">return</span><span style="color: #000000;">&nbsp;ePoint;<br>}&nbsp;&nbsp;<br><br></span><span style="color: #0000ff;">function</span><span style="color: #000000;">&nbsp;getMousePosition(event)&nbsp;{</span><span style="color: #008000;">//</span><span style="color: #008000;">获得鼠标坐标</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">var</span><span style="color: #000000;">&nbsp;x&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;event</span><span style="color: #000000;">.</span><span style="color: #000000;">clientX;<br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">var</span><span style="color: #000000;">&nbsp;y&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;event</span><span style="color: #000000;">.</span><span style="color: #000000;">clientY;<br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">if</span><span style="color: #000000;">(</span><span style="color: #000000;">!</span><span style="color: #000000;">document</span><span style="color: #000000;">.</span><span style="color: #000000;">all){</span><span style="color: #008000;">//</span><span style="color: #008000;">适用firefox</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mouse_x</span><span style="color: #000000;">=</span><span style="color: #000000;">event</span><span style="color: #000000;">.</span><span style="color: #000000;">pageX;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mouse_y</span><span style="color: #000000;">=</span><span style="color: #000000;">event</span><span style="color: #000000;">.</span><span style="color: #000000;">pageY;&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;}</span><span style="color: #0000ff;">else</span><span style="color: #000000;">{</span><span style="color: #008000;">//</span><span style="color: #008000;">适用ie</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mouse_x</span><span style="color: #000000;">=</span><span style="color: #000000;">document</span><span style="color: #000000;">.</span><span style="color: #000000;">documentElement</span><span style="color: #000000;">.</span><span style="color: #000000;">scrollLeft</span><span style="color: #000000;">+</span><span style="color: #000000;">event</span><span style="color: #000000;">.</span><span style="color: #000000;">clientX;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mouse_y</span><span style="color: #000000;">=</span><span style="color: #000000;">document</span><span style="color: #000000;">.</span><span style="color: #000000;">documentElement</span><span style="color: #000000;">.</span><span style="color: #000000;">scrollTop</span><span style="color: #000000;">+</span><span style="color: #000000;">event</span><span style="color: #000000;">.</span><span style="color: #000000;">clientY;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">alert(document.documentElement.scrollTop);&nbsp;滚动条滚过的高度，+&nbsp;显示页面的高度原因是声明后document.body.scrollTop的值永远等于0，解决办法是只需把document.body用&nbsp;document.documentElement替换即可。</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;}<br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">var</span><span style="color: #000000;">&nbsp;mouseP&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;{</span><span style="color: #000000;">"</span><span style="color: #000000;">mouse_x</span><span style="color: #000000;">"</span><span style="color: #000000;">:</span><span style="color: #000000;">mouse_x</span><span style="color: #000000;">,</span><span style="color: #000000;">"</span><span style="color: #000000;">mouse_y</span><span style="color: #000000;">"</span><span style="color: #000000;">:</span><span style="color: #000000;">mouse_y};<br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">return</span><span style="color: #000000;">&nbsp;mouseP;<br>&nbsp;&nbsp;&nbsp;&nbsp;<br>}<br><br><br></span><span style="color: #0000ff;">function</span><span style="color: #000000;">&nbsp;hiddenDiv(id</span><span style="color: #000000;">,</span><span style="color: #000000;">event)&nbsp;{&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">alert(id);</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;mouseP&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;getMousePosition(event);<br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">alert("x:"+mouse_x+",y:"+mouse_y);<br>&nbsp;&nbsp;&nbsp;&nbsp;//$("#mx").val(mouse_x);<br>&nbsp;&nbsp;&nbsp;//&nbsp;$("#my").val(mouse_y);</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;ajax_id&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">ajax_</span><span style="color: #000000;">'</span><span style="color: #000000;">+</span><span style="color: #000000;">id;<br>&nbsp;&nbsp;&nbsp;&nbsp;</span>if(ajax_div=document.getElementById(ajax_id)) {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ePoint = getAbsPoint(ajax_div);<br>&nbsp;&nbsp;&nbsp; } else {<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; other_hiddenDiv(id); //ajax取消请求时，需隐藏要请求的内容 <br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; return false;<br>&nbsp;&nbsp;&nbsp; }
<span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">此if语句表示鼠标在此元素范围以外，则隐藏某个层</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">if</span><span style="color: #000000;">(mouseP</span><span style="color: #000000;">.</span><span style="color: #000000;">mouse_x&nbsp;</span><span style="color: #000000;">&lt;</span><span style="color: #000000;">&nbsp;ePoint</span><span style="color: #000000;">.</span><span style="color: #000000;">l&nbsp;</span><span style="color: #000000;">||</span><span style="color: #000000;">&nbsp;mouseP</span><span style="color: #000000;">.</span><span style="color: #000000;">mouse_x&nbsp;</span><span style="color: #000000;">&gt;</span><span style="color: #000000;">&nbsp;(ePoint</span><span style="color: #000000;">.</span><span style="color: #000000;">l&nbsp;</span><span style="color: #000000;">+</span><span style="color: #000000;">&nbsp;ePoint</span><span style="color: #000000;">.</span><span style="color: #000000;">w)&nbsp;</span><span style="color: #000000;">||</span><span style="color: #000000;">&nbsp;mouseP</span><span style="color: #000000;">.</span><span style="color: #000000;">mouse_y&nbsp;</span><span style="color: #000000;">&lt;</span><span style="color: #000000;">&nbsp;ePoint</span><span style="color: #000000;">.</span><span style="color: #000000;">t&nbsp;</span><span style="color: #000000;">||</span><span style="color: #000000;">&nbsp;mouseP</span><span style="color: #000000;">.</span><span style="color: #000000;">mouse_y&nbsp;</span><span style="color: #000000;">&gt;</span><span style="color: #000000;">&nbsp;(ePoint</span><span style="color: #000000;">.</span><span style="color: #000000;">t&nbsp;</span><span style="color: #000000;">+</span><span style="color: #000000;">&nbsp;ePoint</span><span style="color: #000000;">.</span><span style="color: #000000;">h))&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;document</span><span style="color: #000000;">.</span><span style="color: #000000;">getElementById(</span><span style="color: #000000;">"</span><span style="color: #000000;">ajax_</span><span style="color: #000000;">"</span><span style="color: #000000;">+</span><span style="color: #000000;">id)</span><span style="color: #000000;">.</span><span style="color: #000000;">style</span><span style="color: #000000;">.</span><span style="color: #000000;">display&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">none</span><span style="color: #000000;">"</span><span style="color: #000000;">;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;<br>}<br><br></span><span style="color: #0000ff;">function</span><span style="color: #000000;">&nbsp;other_hiddenDiv(id)&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;document</span><span style="color: #000000;">.</span><span style="color: #000000;">getElementById(id)</span><span style="color: #000000;">.</span><span style="color: #000000;">style</span><span style="color: #000000;">.</span><span style="color: #000000;">display&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">none</span><span style="color: #000000;">"</span><span style="color: #000000;">;&nbsp;&nbsp;&nbsp;<br>}<br></span><span style="color: #0000ff;">function</span><span style="color: #000000;">&nbsp;showDiv(id)&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;document</span><span style="color: #000000;">.</span><span style="color: #000000;">getElementById(id)</span><span style="color: #000000;">.</span><span style="color: #000000;">style</span><span style="color: #000000;">.</span><span style="color: #000000;">display&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">""</span><span style="color: #000000;">;&nbsp;&nbsp;&nbsp;&nbsp;<br>}</span></div>
<br>2.HTML代码：<br>
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #0000ff;">&lt;</span><span style="color: #800000;"></span><span style="color: #ff0000;"></span><span style="color: #0000ff;">img </span><span style="color: #ff0000;">title</span><span style="color: #0000ff;">="{{$famous[i].emco_company}}"</span><span style="color: #ff0000;">&nbsp;onmouseover</span><span style="color: #0000ff;">="ajax_post('{{$famous[i].emco_member_id}}')"</span><span style="color: #ff0000;"> <br>onmouseout</span><span style="color: #0000ff;">="hiddenDiv('famous{{$famous[i].emco_member_id}}',event)"</span><span style="color: #0000ff;">&gt;鼠标经过这显示或隐藏生成的ajax层&lt;/img&gt;<br>&lt;div id="famous{{$famous[i].emco_member_id}}" style="margin_top:-20px;margin-left:50px;background-color:blue" width="100px"&gt;&lt;!--ajax层--&gt;<br>&nbsp;&nbsp;&nbsp; &lt;div name="loading{{$famous[i].emco_member_id}}" style="display:none;position:absolute;z-index:999;"&gt;Loading...&lt;/div&gt;<br>&nbsp;&nbsp;&nbsp; &lt;!--AJAX层将会在此处产生--&gt;<br>&lt;/div&gt;
<br></span></div>
<br>3.php后台：（生成ajax层
）<br>
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #0000ff;">function</span><span style="color: #000000;">&nbsp;actionACompanyPosts()&nbsp;{ <span style="color: #18a405;">//生成ajax层</span><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$posts</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$this</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">_post</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">mACompanyPost();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">dump($posts);</span><span style="color: #008000;"><br></span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$posts_div</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">&lt;div&nbsp;id=ajax_famous</span><span style="color: #000000;">"</span><span style="color: #000000;">.</span><span style="color: #800080;">$_GET</span><span style="color: #000000;">[</span><span style="color: #000000;">'</span><span style="color: #000000;">member_id</span><span style="color: #000000;">'</span><span style="color: #000000;">]</span><span style="color: #000000;">.</span><span style="color: #000000;">"</span><span style="color: #000000;">&nbsp;width=300px&nbsp;style=\</span><span style="color: #000000;">"</span><span style="color: #000000;">position</span><span style="color: #000000;">:</span><span style="color: #000000;">absolute;z</span><span style="color: #000000;">-</span><span style="color: #000000;">index</span><span style="color: #000000;">:</span><span style="color: #000000;">999</span><span style="color: #000000;">;background</span><span style="color: #000000;">-</span><span style="color: #000000;">color</span><span style="color: #000000;">:</span><span style="color: #008000;">#</span><span style="color: #008000;">fff;border:1px&nbsp;solid&nbsp;black;margin-top:-30px\"&nbsp;onmouseout=\"hiddenDiv('famous".$_GET['member_id']."',event)\"&gt;";</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">if</span><span style="color: #000000;">(</span><span style="color: #000000;">!</span><span style="color: #0000ff;">empty</span><span style="color: #000000;">(</span><span style="color: #800080;">$posts</span><span style="color: #000000;">))&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$len</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #008080;">count</span><span style="color: #000000;">(</span><span style="color: #800080;">$posts</span><span style="color: #000000;">);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">for</span><span style="color: #000000;">(</span><span style="color: #800080;">$i</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">0</span><span style="color: #000000;">&nbsp;;&nbsp;</span><span style="color: #800080;">$i</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">&lt;</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$len</span><span style="color: #000000;">&nbsp;;&nbsp;</span><span style="color: #800080;">$i</span><span style="color: #000000;">++</span><span style="color: #000000;">)&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$posts_div</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">.=</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;"></span><span style="color: #008000;">($i+1).".&nbsp;".$posts[$i]['empo_name']."&lt;br/&gt;";<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;</span><span style="color: #0000ff;">else</span><span style="color: #000000;">&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$posts_div</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">.=</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">暂无职位</span><span style="color: #000000;">"</span><span style="color: #000000;">;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$posts_div</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">.=</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">&lt;/div&gt;</span><span style="color: #000000;">"</span><span style="color: #000000;">;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">echo</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$posts_div</span><span style="color: #000000;">;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;}</span></div>
<br><br><img src ="http://www.phpweblog.net/fuyongjie/aggbug/5653.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.phpweblog.net/fuyongjie/" target="_blank">bestmost</a> 2008-08-25 09:29 <a href="http://www.phpweblog.net/fuyongjie/archive/2008/08/25/5653.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>用PHP程序实现支持页面后退的两种方法</title><link>http://www.phpweblog.net/fuyongjie/archive/2008/07/28/5491.html</link><dc:creator>bestmost</dc:creator><author>bestmost</author><pubDate>Mon, 28 Jul 2008 14:23:00 GMT</pubDate><guid>http://www.phpweblog.net/fuyongjie/archive/2008/07/28/5491.html</guid><wfw:comment>http://www.phpweblog.net/fuyongjie/comments/5491.html</wfw:comment><comments>http://www.phpweblog.net/fuyongjie/archive/2008/07/28/5491.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.phpweblog.net/fuyongjie/comments/commentRss/5491.html</wfw:commentRss><trackback:ping>http://www.phpweblog.net/fuyongjie/services/trackbacks/5491.html</trackback:ping><description><![CDATA[<h2>用PHP程序实现支持页面后退的两种方法</h2>
在开发过程中，往往因为表单出错而返回页面的时候填写的信息都不见了，为了支持页面回跳，可以通过两种方法实现。<br>
<br>
&nbsp; &nbsp; <strong>第一，使用Header方法设置消息头Cache-control</strong>
<div class="quote">
<h5>引用:</h5>
<blockquote>header('Cache-control: private, must-revalidate');&nbsp;&nbsp;//支持页面回跳</blockquote></div>
<strong>第二，使用session_cache_limiter方法</strong>
<div class="quote">
<h5>引用:</h5>
<blockquote>&nbsp;&nbsp;<font color="DarkOrange">//注意要写在session_start方法之前</font><br>
&nbsp; &nbsp; session_cache_limiter('private, must-revalidate');<br><br><br><strong>补充：</strong><br>
Cache-Control消息头域说明<br>
Cache-Control指定请求和响应遵循的缓存机制。在请求消息或响应消息中设置Cache-Control并不会修改另一个消息处理过程中的缓存
处理过程。请求时的缓存指令包括no-cache、no-store、max-age、max-stale、min-fresh、only-if-
cached，响应消息中的指令包括public、private、no-cache、no-store、no-transform、must-
revalidate、proxy-revalidate、max-age。各个消息中的指令含义如下：<br>
<br>
&nbsp; &nbsp; Public指示响应可被任何缓存区缓存。<br>
<br>
&nbsp; &nbsp; Private指示对于单个用户的整个或部分响应消息，不能被共享缓存处理。这允许服务器仅仅描述当用户的部分响应消息，此响应消息对于其他用户的请求无效。<br>
<br>
&nbsp; &nbsp; no-cache指示请求或响应消息不能缓存<br>
<br>
&nbsp; &nbsp; no-store用于防止重要的信息被无意的发布。在请求消息中发送将使得请求和响应消息都不使用缓存。<br>
<br>
&nbsp; &nbsp; max-age指示客户机可以接收生存期不大于指定时间（以秒为单位）的响应。<br>
<br>
&nbsp; &nbsp; min-fresh指示客户机可以接收响应时间小于当前时间加上指定时间的响应。<br>
<br>
&nbsp; &nbsp; max-stale指示客户机可以接收超出超时期间的响应消息。如果指定max-stale消息的值，那么客户机可以接收超出超时期指定值之内的响应消息。<br>
<br>
<br>
<br>
<strong>关于表单刷新</strong><br>
<br>
问：为什么我在点击浏览器的后退按钮后，所有字段的信息都被清空了？<br>
<br>
答：这是由于你在你的表单提交页面中使用了 session_start 函数。该函数会强制当前页面不被缓存。解决办法为，在你的
Session_start 函数后加入 header("Cache-control: private");
注意在本行之前你的PHP程序不能有任何输出。<br>
<br>
补充：还有基于session的解决方法，在session_start前加上
<div class="quote">
<h5>引用:</h5>
<blockquote>session_cache_limiter('nocache');// 清空表单<br>
session_cache_limiter('private'); //不清空表单，只在session生效期间<br>
session_cache_limiter('public'); //不清空表单，如同没使用session一般<br>
<br>
可以在session_start();前加上 session_cache_limiter("private,max-age=10800");</blockquote></div>
<br></blockquote></div><img src ="http://www.phpweblog.net/fuyongjie/aggbug/5491.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.phpweblog.net/fuyongjie/" target="_blank">bestmost</a> 2008-07-28 22:23 <a href="http://www.phpweblog.net/fuyongjie/archive/2008/07/28/5491.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>fleaphp 关联</title><link>http://www.phpweblog.net/fuyongjie/archive/2008/07/28/5490.html</link><dc:creator>bestmost</dc:creator><author>bestmost</author><pubDate>Mon, 28 Jul 2008 09:26:00 GMT</pubDate><guid>http://www.phpweblog.net/fuyongjie/archive/2008/07/28/5490.html</guid><wfw:comment>http://www.phpweblog.net/fuyongjie/comments/5490.html</wfw:comment><comments>http://www.phpweblog.net/fuyongjie/archive/2008/07/28/5490.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.phpweblog.net/fuyongjie/comments/commentRss/5490.html</wfw:commentRss><trackback:ping>http://www.phpweblog.net/fuyongjie/services/trackbacks/5490.html</trackback:ping><description><![CDATA[1.<br>$table-&gt;enableLinks(); //激活所有关联<br>
$table-&gt;enableLink('mappingName'); //激活单个关联<br><br>2.关联操作：<br><code id="code0">&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; $<span style="background-color: yellow;">tableTags</span> =&amp; $tablePosts-&gt;<span style="color: red;">getLinkTable</span>('tags');<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;$link =&amp; <span style="background-color: yellow;">$tableTags</span>-&gt;<span style="color: red;">getLink</span>('posts');<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;$link-&gt;<span style="color: red;">fields</span> = array('post_id', 'title', 'created');<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;$link-&gt;<span style="color: red;">limit </span>= 10;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;$tablePosts-&gt;<span style="color: red;">assembleRecursionRow</span>('tags', $post);//</code>功能就是用 Table_Posts 对象的 tags 关联对应的 Table_Tags 对象查询 Table_Tags 对象的关联数据（我也晕了 -_-#）,如<span style="background-color: yellow;">文章</span>a的<span style="background-color: yellow;">分类</span>tag为小说，当我们点击小说这个tag时，就可以查出小说下的<span style="background-color: yellow;">其他文章</span>了<br>(<a href="http://www.fleaphp.org/bbs/viewthread.php?tid=1878&amp;highlight=assembleRecursionRow">http://www.fleaphp.org/bbs/viewthread.php?tid=1878&amp;highlight=assembleRecursionRow</a>)<br>&nbsp; <br><br>&nbsp;&nbsp;&nbsp; 其中：$tableTags得到类似如下的结构：<br><br>
<pre>Table_Resume Object<br>(<br>    [tableName] =&gt; employ_resume<br>    [primaryKey] =&gt; emre_id<br>    [schema] =&gt; <br>    [fullTableName] =&gt; employ_resume<br>    [hasOne] =&gt; <br>    [belongsTo] =&gt; <br>    [hasMany] =&gt; <br>    [manyToMany] =&gt; <br>    [meta] =&gt; Array<br>        (</pre>
&nbsp;&nbsp;  &nbsp;&nbsp; &nbsp; .........<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;  &nbsp; ..........<br><img src ="http://www.phpweblog.net/fuyongjie/aggbug/5490.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.phpweblog.net/fuyongjie/" target="_blank">bestmost</a> 2008-07-28 17:26 <a href="http://www.phpweblog.net/fuyongjie/archive/2008/07/28/5490.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>（转）ajax+jquery+flea下拉列表动态显示相应的数据</title><link>http://www.phpweblog.net/fuyongjie/archive/2008/07/26/5480.html</link><dc:creator>bestmost</dc:creator><author>bestmost</author><pubDate>Sat, 26 Jul 2008 06:57:00 GMT</pubDate><guid>http://www.phpweblog.net/fuyongjie/archive/2008/07/26/5480.html</guid><wfw:comment>http://www.phpweblog.net/fuyongjie/comments/5480.html</wfw:comment><comments>http://www.phpweblog.net/fuyongjie/archive/2008/07/26/5480.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.phpweblog.net/fuyongjie/comments/commentRss/5480.html</wfw:commentRss><trackback:ping>http://www.phpweblog.net/fuyongjie/services/trackbacks/5480.html</trackback:ping><description><![CDATA[<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #000000;">这只是一些实现代码的片段,仅供参考[来源Fleaphp]<br><br></span><span style="color: #0000ff;">function</span><span style="color: #000000;">&nbsp;selectDisplay()&nbsp;&nbsp;用来读取通过改变下拉列表要显示的数据&nbsp;&nbsp;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$model</span><span style="color: #000000;">=&amp;</span><span style="color: #000000;">FLEA::getSingleton(&#8216;Table_modelInfo&#8217;);</span><span style="color: #008000;">//</span><span style="color: #008000;">引入要用到的数据表类&nbsp;&nbsp;</span><span style="color: #008000;"><br></span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$condition</span><span style="color: #000000;">=</span><span style="color: #000000;">array(&#8216;RegID&#8217;</span><span style="color: #000000;">=&gt;</span><span style="color: #000000;">5</span><span style="color: #000000;">);</span><span style="color: #008000;">//</span><span style="color: #008000;">显示的条件&nbsp;&nbsp;</span><span style="color: #008000;"><br></span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$rows</span><span style="color: #000000;">=</span><span style="color: #000000;">$model</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">find($condition);</span><span style="color: #008000;">//</span><span style="color: #008000;">查询数据&nbsp;&nbsp;</span><span style="color: #008000;"><br></span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;foreach&nbsp;($rows&nbsp;as&nbsp;$item)&nbsp;&nbsp;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;&nbsp;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;$item.&#8216;</span><span style="color: #000000;">|</span><span style="color: #000000;">&#8217;;&nbsp;&nbsp;打印出查找出来的数据并以&#8220;</span><span style="color: #000000;">|</span><span style="color: #000000;">&#8221;为分隔符来分隔数据用于读取&nbsp;&nbsp;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;<br><br>http:</span><span style="color: #008000;">//</span><span style="color: #008000;">localhost/index.php/Default/SelectDisplay&nbsp;&nbsp;</span><span style="color: #008000;"><br></span><span style="color: #000000;"><br></span><span style="color: #0000ff;">function</span><span style="color: #000000;">&nbsp;actionDisplay()&nbsp;&nbsp;<br><br>{&nbsp;&nbsp;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$</span><span style="color: #0000ff;">this</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">selectDisplay();</span><span style="color: #008000;">//</span><span style="color: #008000;">调用执行selectDisplay()&nbsp;&nbsp;</span><span style="color: #008000;"><br></span><span style="color: #000000;"><br>}&nbsp;&nbsp;<br><br>&nbsp;&nbsp;<br><br>test.html&nbsp;&nbsp;<br><br></span><span style="color: #000000;">&lt;</span><span style="color: #000000;">script&nbsp;lanuage</span><span style="color: #000000;">=</span><span style="color: #000000;">"</span><span style="color: #000000;">javascript</span><span style="color: #000000;">"</span><span style="color: #000000;">&nbsp;src</span><span style="color: #000000;">=</span><span style="color: #000000;">js</span><span style="color: #000000;">/</span><span style="color: #000000;">jquery.js</span><span style="color: #000000;">&gt;&lt;/</span><span style="color: #000000;">script</span><span style="color: #000000;">&gt;</span><span style="color: #000000;">&nbsp;&nbsp;<br><br></span><span style="color: #000000;">&lt;</span><span style="color: #000000;">script&nbsp;lanuage</span><span style="color: #000000;">=</span><span style="color: #000000;">"</span><span style="color: #000000;">javascript</span><span style="color: #000000;">"</span><span style="color: #000000;">&gt;</span><span style="color: #000000;">&nbsp;&nbsp;<br><br>$().ready(</span><span style="color: #0000ff;">function</span><span style="color: #000000;">(){&nbsp;&nbsp;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">mould下拉列表的ID&nbsp;&nbsp;</span><span style="color: #008000;"><br></span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$(&#8216;#mould&#8217;).change(</span><span style="color: #0000ff;">function</span><span style="color: #000000;">(){&nbsp;&nbsp;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;$.ajax({&nbsp;&nbsp;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;type:</span><span style="color: #000000;">"</span><span style="color: #000000;">GET</span><span style="color: #000000;">"</span><span style="color: #000000;">,&nbsp;&nbsp;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;data:</span><span style="color: #000000;">"</span><span style="color: #000000;">modelID=</span><span style="color: #000000;">"</span><span style="color: #000000;">+</span><span style="color: #000000;">$(</span><span style="color: #000000;">"</span><span style="color: #000000;">#mould</span><span style="color: #000000;">"</span><span style="color: #000000;">).val(),</span><span style="color: #008000;">//</span><span style="color: #008000;">获取下拉列表的值&nbsp;&nbsp;</span><span style="color: #008000;"><br></span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;url:</span><span style="color: #000000;">"</span><span style="color: #000000;">../../index.php/Default/SelectDisplay</span><span style="color: #000000;">"</span><span style="color: #000000;">,&nbsp;&nbsp;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;success:change,</span><span style="color: #008000;">//</span><span style="color: #008000;">执行javasctip函数change()&nbsp;&nbsp;</span><span style="color: #008000;"><br></span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;})&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;});&nbsp;&nbsp;<br><br>})&nbsp;&nbsp;<br><br>&nbsp;&nbsp;<br><br></span><span style="color: #0000ff;">function</span><span style="color: #000000;">&nbsp;change(value)&nbsp;&nbsp;<br><br>{&nbsp;&nbsp;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">var</span><span style="color: #000000;">&nbsp;result</span><span style="color: #000000;">=</span><span style="color: #000000;">value;&nbsp;&nbsp;&nbsp;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;data</span><span style="color: #000000;">=</span><span style="color: #000000;">result.split(</span><span style="color: #000000;">"</span><span style="color: #000000;">|</span><span style="color: #000000;">"</span><span style="color: #000000;">);</span><span style="color: #008000;">//</span><span style="color: #008000;">获取url指的页面打印出来的值，用split("|")以数组形式读取出来的&nbsp;&nbsp;</span><span style="color: #008000;"><br></span><span style="color: #000000;"><br></span><span style="color: #008000;">//</span><span style="color: #008000;">赋值中主要是单选框、复选框赋值有所不同&nbsp;&nbsp;</span><span style="color: #008000;"><br></span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;$(</span><span style="color: #000000;">"</span><span style="color: #000000;">#p_title</span><span style="color: #000000;">"</span><span style="color: #000000;">).val(data[</span><span style="color: #000000;">2</span><span style="color: #000000;">]);&nbsp;&nbsp;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;$(</span><span style="color: #000000;">"</span><span style="color: #000000;">input[@name=p_KIND]</span><span style="color: #000000;">"</span><span style="color: #000000;">).get(data[</span><span style="color: #000000;">0</span><span style="color: #000000;">]).checked</span><span style="color: #000000;">=</span><span style="color: #0000ff;">true</span><span style="color: #000000;">;</span><span style="color: #008000;">//</span><span style="color: #008000;">对单选框赋值&nbsp;&nbsp;</span><span style="color: #008000;"><br></span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;$(</span><span style="color: #000000;">"</span><span style="color: #000000;">#p_NUM</span><span style="color: #000000;">"</span><span style="color: #000000;">).val(data[</span><span style="color: #000000;">1</span><span style="color: #000000;">]);&nbsp;&nbsp;<br><br>其他赋值都一样了&nbsp;&nbsp;<br><br>&nbsp;&nbsp;<br><br>}&nbsp;&nbsp;<br><br>&nbsp;&nbsp;<br><br></span><span style="color: #000000;">&lt;/</span><span style="color: #000000;">script</span><span style="color: #000000;">&gt;</span><span style="color: #000000;">&nbsp;&nbsp;<br><br>&nbsp;</span><span style="color: #000000;">&lt;</span><span style="color: #000000;">select&nbsp;name</span><span style="color: #000000;">=</span><span style="color: #000000;">"</span><span style="color: #000000;">mould</span><span style="color: #000000;">"</span><span style="color: #000000;">&nbsp;id</span><span style="color: #000000;">=</span><span style="color: #000000;">"</span><span style="color: #000000;">mould</span><span style="color: #000000;">"</span><span style="color: #000000;">&gt;</span><span style="color: #000000;">&nbsp;&nbsp;<br><br>&nbsp;{{html_options&nbsp;options</span><span style="color: #000000;">=</span><span style="color: #000000;">$rows}}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;用smarty模板里html_options填充的数据&nbsp;&nbsp;<br><br>&nbsp;&nbsp;</span><span style="color: #000000;">&lt;/</span><span style="color: #000000;">select</span><span style="color: #000000;">&gt;</span><span style="color: #000000;">&nbsp;&nbsp;</span></div>
<br><img src ="http://www.phpweblog.net/fuyongjie/aggbug/5480.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.phpweblog.net/fuyongjie/" target="_blank">bestmost</a> 2008-07-26 14:57 <a href="http://www.phpweblog.net/fuyongjie/archive/2008/07/26/5480.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>fleaphp smarty 下 options 被选中表示</title><link>http://www.phpweblog.net/fuyongjie/archive/2008/07/18/5375.html</link><dc:creator>bestmost</dc:creator><author>bestmost</author><pubDate>Fri, 18 Jul 2008 06:46:00 GMT</pubDate><guid>http://www.phpweblog.net/fuyongjie/archive/2008/07/18/5375.html</guid><wfw:comment>http://www.phpweblog.net/fuyongjie/comments/5375.html</wfw:comment><comments>http://www.phpweblog.net/fuyongjie/archive/2008/07/18/5375.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.phpweblog.net/fuyongjie/comments/commentRss/5375.html</wfw:commentRss><trackback:ping>http://www.phpweblog.net/fuyongjie/services/trackbacks/5375.html</trackback:ping><description><![CDATA[<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #0000ff;">
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #0000ff;">一：以下是在回显，待修改页面中 表示以选中<br><br><br>js代码：<br>function</span><span style="color: #000000;">&nbsp;option_checked(id,db_value)&nbsp;{</span><span style="color: #008000;">//<br>//</span><span style="color: #008000;">alert(db_value);</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">if</span><span style="color: #000000;">(db_value&nbsp;</span><span style="color: #000000;">!=</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">""</span><span style="color: #000000;">){<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="color: #0010ff;">for</span>(i=0;i&lt;_getObj(id).options.length;i++) {<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <span style="color: #0010ff;">if</span>(_getObj(id).options[i].value == db_value){<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; _getObj(id).options[i].selected = true;//实现某个option的选中<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }</span><span style="color: #008000;"></span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;</span><span style="color: #0000ff;">else</span><span style="color: #000000;">&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_getObj(id).options[</span><span style="color: #000000;">0</span><span style="color: #000000;">].selected&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">true</span><span style="color: #000000;">;<br>&nbsp;&nbsp;&nbsp;&nbsp;}<br>}<br><br><br>option_checked('company_type',"{{$comExt.saco_company_type}}");<br></span></div>
html代码：<br><br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &lt;</span><span style="color: #800000;">select&nbsp;</span><span style="color: #ff0000;">name</span><span style="color: #0000ff;">="registered_capital_type"</span><span style="color: #ff0000;">&nbsp;id</span><span style="color: #0000ff;">="registered_capital_type"</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">option&nbsp;</span><span style="color: #ff0000;">value</span><span style="color: #0000ff;">="0"</span><span style="color: #ff0000;">&nbsp;</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;">人民币</span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">option</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">option&nbsp;</span><span style="color: #ff0000;">value</span><span style="color: #0000ff;">="1"</span><span style="color: #ff0000;">&nbsp;</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;">港币</span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">option</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">option&nbsp;</span><span style="color: #ff0000;">value</span><span style="color: #0000ff;">="2"</span><span style="color: #ff0000;">&nbsp;</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;">欧元</span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">option</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">option&nbsp;</span><span style="color: #ff0000;">value</span><span style="color: #0000ff;">="3"</span><span style="color: #ff0000;">&nbsp;</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;">美元</span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">option</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">option&nbsp;</span><span style="color: #ff0000;">value</span><span style="color: #0000ff;">="4"</span><span style="color: #ff0000;">&nbsp;</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;">日元</span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">option</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">select</span><span style="color: #0000ff;">&gt;<br><br><br>二：仅回显，不修改时,即仅将opinion选中的项以文本显示<br>js： <br>
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #0000ff;">function</span><span style="color: #000000;">&nbsp;value2text(id_in,id_out,db_value)&nbsp;{</span><span style="color: #008000;">//</span><span style="color: #008000;">将从数据库读取的options的value转化成text显示，前提：当前页面有&lt;select&gt;&lt;option&gt;,可将其隐藏</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">var</span><span style="color: #000000;">&nbsp;oOption&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;_getObj(id_in).options;<br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">var&nbsp;comtype_db&nbsp;=&nbsp;"{{$comAll.saco_company_type}}";</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">alert(comtype_db);</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">for</span><span style="color: #000000;">&nbsp;(i</span><span style="color: #000000;">=</span><span style="color: #000000;">0</span><span style="color: #000000;">;i</span><span style="color: #000000;">&lt;</span><span style="color: #000000;">oOption.length;i</span><span style="color: #000000;">++</span><span style="color: #000000;">)&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">if</span><span style="color: #000000;">(oOption[i].value&nbsp;</span><span style="color: #000000;">==</span><span style="color: #000000;">&nbsp;db_value)&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_getObj(id_out).innerHTML&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;oOption[i].text;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;<br>}<br><br></span></div>
html: （隐藏它）<br>
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #000000;"></span><span style="color: #000000;">&nbsp;  <br></span><span style="color: #000000;"></span><span style="color: #000000;"></span><span style="color: #000000;">
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #0000ff;"><span style="color: #000000;">&lt;</span><span style="color: #000000;">div&nbsp;style</span><span style="color: #000000;">=</span><span style="color: red;">display:"none"</span><span style="color: #000000;">&gt;</span><span style="color: #000000;"> &nbsp;&nbsp;&nbsp;</span></span><span style="color: #0000ff;">  <br>&nbsp;&nbsp;&nbsp; &lt;</span><span style="color: #800000;">select&nbsp;</span><span style="color: #ff0000;">name</span><span style="color: #0000ff;">="registered_capital_type"</span><span style="color: #ff0000;">&nbsp;id</span><span style="color: #0000ff;">="registered_capital_type"</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">option&nbsp;</span><span style="color: #ff0000;">value</span><span style="color: #0000ff;">="0"</span><span style="color: #ff0000;">&nbsp;</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;">人民币</span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">option</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">option&nbsp;</span><span style="color: #ff0000;">value</span><span style="color: #0000ff;">="1"</span><span style="color: #ff0000;">&nbsp;</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;">港币</span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">option</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">option&nbsp;</span><span style="color: #ff0000;">value</span><span style="color: #0000ff;">="2"</span><span style="color: #ff0000;">&nbsp;</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;">欧元</span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">option</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">option&nbsp;</span><span style="color: #ff0000;">value</span><span style="color: #0000ff;">="3"</span><span style="color: #ff0000;">&nbsp;</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;">美元</span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">option</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">option&nbsp;</span><span style="color: #ff0000;">value</span><span style="color: #0000ff;">="4"</span><span style="color: #ff0000;">&nbsp;</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;">日元</span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">option</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">select</span><span style="color: #0000ff;">&gt;<br></span><span style="color: #0000ff;"><span style="color: #000000;">&lt;/</span><span style="color: #000000;">div</span><span style="color: #000000;">&gt;</span></span><br><span style="color: #0000ff;">如：下面这句话加在&lt;td&gt;&lt;/td&gt;就可了</span><span style="color: #0000ff;"><span style="color: #000000;">
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><span style="color: #000000;">&lt;</span><span style="color: #000000;">script</span><span style="color: #000000;">&gt;</span><span style="color: #000000;">value2text('registered_capital_type','saco_registered_capital_type',</span><span style="color: #000000;">"</span><span style="color: #000000;">{{$comAll.saco_registered_capital_type}}</span><span style="color: #000000;">"</span><span style="color: #000000;">);&nbsp;</span><span style="color: #000000;">&lt;/</span><span style="color: #000000;">script</span><span style="color: #000000;">&gt;</span><span style="color: #0000ff;"><span style="color: #000000;"><span style="color: #0000ff;"><span style="color: #000000;"><span style="color: #000000;"></span></span></span></span></span><br></div>
</span></span></div>
<br></span><span style="color: #000000;"><br></span><span style="color: #000000;"></span></div>
<br></span></div>
<br><img src ="http://www.phpweblog.net/fuyongjie/aggbug/5375.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.phpweblog.net/fuyongjie/" target="_blank">bestmost</a> 2008-07-18 14:46 <a href="http://www.phpweblog.net/fuyongjie/archive/2008/07/18/5375.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>fleaphp 上传文件多文件多类型上传 生成jpg缩略图</title><link>http://www.phpweblog.net/fuyongjie/archive/2008/07/18/5373.html</link><dc:creator>bestmost</dc:creator><author>bestmost</author><pubDate>Fri, 18 Jul 2008 04:19:00 GMT</pubDate><guid>http://www.phpweblog.net/fuyongjie/archive/2008/07/18/5373.html</guid><wfw:comment>http://www.phpweblog.net/fuyongjie/comments/5373.html</wfw:comment><comments>http://www.phpweblog.net/fuyongjie/archive/2008/07/18/5373.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.phpweblog.net/fuyongjie/comments/commentRss/5373.html</wfw:commentRss><trackback:ping>http://www.phpweblog.net/fuyongjie/services/trackbacks/5373.html</trackback:ping><description><![CDATA[<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #000000;"><br></span><span style="color: #008000;">/*</span><span style="color: #008000;">-------------------------&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;上传文件<br>本程序功能：多文件多类型上传，凡是遇到图片，就生成jpg缩略图，文件与原始图片保存在同一目录下，<br>返回：一个数组<br>&nbsp;&nbsp;&nbsp; array(<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; [files] =&gt;array(<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;  &nbsp;&nbsp;  &nbsp;&nbsp;  &nbsp;&nbsp;  &nbsp;&nbsp;  &nbsp;&nbsp;  [0] =&gt; doc<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; )<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; </span><span style="color: #008000;">[pics] =&gt;array(<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;  &nbsp;&nbsp;  &nbsp;&nbsp;  &nbsp;&nbsp;  &nbsp;&nbsp;  &nbsp;&nbsp;  [0] =&gt; jpg,<br>&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;  &nbsp;&nbsp;  &nbsp;&nbsp;  &nbsp;&nbsp;  &nbsp;&nbsp;  &nbsp;&nbsp;  [1] =&gt; png<br>
&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; )</span><span style="color: #008000;"> &nbsp;&nbsp; &nbsp;&nbsp;  <br>&nbsp;&nbsp;&nbsp; )<br>$num:图片计数用，放在文件的名字中用</span><span style="color: #800080;"><br>$input_file_name：前台的&lt;input type=file&gt;中的name;</span><br><span style="color: #800080;"></span><br><span style="color: #008000;">---------------------------</span><span style="color: #008000;">*/</span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">function</span><span style="color: #000000;">&nbsp;_uploadFiles(</span><span style="color: #800080;">$input_file_name</span><span style="color: #000000;">,</span><span style="color: #800080;">$time</span><span style="color: #000000;">)&nbsp;{</span><span style="color: #008000;">//</span><span style="color: #008000;">可传一个或多个</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$num</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">0</span><span style="color: #000000;">;</span><span style="color: #008000;">//</span><span style="color: #008000;">多文件上传时的计数器&nbsp;&nbsp;&nbsp;&nbsp;//</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$prefix</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #008080;">date</span><span style="color: #000000;">(</span><span style="color: #000000;">'</span><span style="color: #000000;">ym</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #800080;">$time</span><span style="color: #000000;">);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$fileDir</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;FLEA</span><span style="color: #000000;">::</span><span style="color: #000000;">getAppInf(</span><span style="color: #000000;">'</span><span style="color: #000000;">absPath</span><span style="color: #000000;">'</span><span style="color: #000000;">)&nbsp;&nbsp;</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;DS&nbsp;</span><span style="color: #000000;">.</span><span style="color: #000000;">'</span><span style="color: #000000;">sale</span><span style="color: #000000;">'</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;DS&nbsp;</span><span style="color: #000000;">.</span><span style="color: #000000;">'</span><span style="color: #000000;">u</span><span style="color: #000000;">'</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;DS&nbsp;</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">f</span><span style="color: #000000;">'</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;DS&nbsp;</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$prefix</span><span style="color: #000000;">;//这是要上传到的目录,可自己定义<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$thumbDir</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;FLEA</span><span style="color: #000000;">::</span><span style="color: #000000;">getAppInf(</span><span style="color: #000000;">'</span><span style="color: #000000;">absPath</span><span style="color: #000000;">'</span><span style="color: #000000;">)&nbsp;</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;DS&nbsp;</span><span style="color: #000000;">.</span><span style="color: #000000;">'</span><span style="color: #000000;">sale</span><span style="color: #000000;">'</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;DS&nbsp;</span><span style="color: #000000;">.</span><span style="color: #000000;">'</span><span style="color: #000000;">u</span><span style="color: #000000;">'</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;DS&nbsp;</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">t</span><span style="color: #000000;">'</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;DS&nbsp;</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$prefix</span><span style="color: #000000;">;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">dump($fileDir);exit;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;创建需要的目录</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FLEA</span><span style="color: #000000;">::</span><span style="color: #000000;">loadHelper(</span><span style="color: #000000;">'</span><span style="color: #000000;">file</span><span style="color: #000000;">'</span><span style="color: #000000;">);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mkdirs(</span><span style="color: #800080;">$fileDir</span><span style="color: #000000;">);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;mkdirs(</span><span style="color: #800080;">$thumbDir</span><span style="color: #000000;">);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">这三项&nbsp;提示框中用到</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$allowExts</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">.jpg/.png/.gif/.pdf/.doc/.html</span><span style="color: #000000;">'</span><span style="color: #000000;">;</span><span style="color: #008000;">//</span><span style="color: #008000;">当是允许上传的文件类型时</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$picExts</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">.jpg/.png/.gif</span><span style="color: #000000;">'</span><span style="color: #000000;">;</span><span style="color: #008000;">//</span><span style="color: #008000;">当是图片类型时</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$maxSize</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">2000</span><span style="color: #000000;">*</span><span style="color: #000000;">1024</span><span style="color: #000000;">;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">&nbsp;2000KB</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FLEA</span><span style="color: #000000;">::</span><span style="color: #000000;">loadClass(</span><span style="color: #000000;">'</span><span style="color: #000000;">FLEA_Helper_FileUploader</span><span style="color: #000000;">'</span><span style="color: #000000;">);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$uploader</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=&amp;</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">new</span><span style="color: #000000;">&nbsp;FLEA_Helper_FileUploader();<br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">dump($uploader);exit();</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$files</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">&amp;</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$uploader</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">getFiles();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">foreach</span><span style="color: #000000;">&nbsp;(</span><span style="color: #800080;">$files</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">as</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$file</span><span style="color: #000000;">)&nbsp;{&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">if</span><span style="color: #000000;">&nbsp;(</span><span style="color: #000000;">!</span><span style="color: #800080;">$uploader</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">isFileExist(</span><span style="color: #800080;">$input_file_name</span><span style="color: #000000;">.</span><span style="color: #800080;">$num</span><span style="color: #000000;">))&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">exit($input_file_name.$num);</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">echo</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">&lt;script&gt;alert('你有文件或图片上传框没有选择上传，请到相应的修改页面进行修改上传')&lt;/script&gt;</span><span style="color: #000000;">"</span><span style="color: #000000;">;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">js_alert('你有文件或图片上传框没有上传，请到相应的修改页面进行修改上传，',&nbsp;'',&nbsp;$_SERVER[HTTP_REFERER]);</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">/exit;</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">if</span><span style="color: #000000;">&nbsp;(</span><span style="color: #000000;">!</span><span style="color: #800080;">$file</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">check(</span><span style="color: #800080;">$allowExts</span><span style="color: #000000;">,</span><span style="color: #800080;">$maxSize</span><span style="color: #000000;">))&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;js_alert(</span><span style="color: #000000;">"</span><span style="color: #000000;">上传的文件类型不符或者超过了大小限制，允许:{$allowExts}文件，单个大小不大于{$maxSize}</span><span style="color: #000000;">"</span><span style="color: #000000;">,</span><span style="color: #000000;">''</span><span style="color: #000000;">,</span><span style="color: #800080;">$_SERVER</span><span style="color: #000000;">[HTTP_REFERER]);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">return</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">false</span><span style="color: #000000;">;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">if</span><span style="color: #000000;">(</span><span style="color: #800080;">$file</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">check(</span><span style="color: #800080;">$picExts</span><span style="color: #000000;">)){<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$num</span><span style="color: #000000;">++</span><span style="color: #000000;">;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">&nbsp;文件名根据当前时间和上传文件的临时文件名生成，确保不会产生重复的文件名</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$basename</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$_COOKIE</span><span style="color: #000000;">[</span><span style="color: #000000;">'</span><span style="color: #000000;">id</span><span style="color: #000000;">'</span><span style="color: #000000;">]</span><span style="color: #000000;">.</span><span style="color: #000000;">"</span><span style="color: #000000;">_</span><span style="color: #000000;">"</span><span style="color: #000000;">.</span><span style="color: #800080;">$time</span><span style="color: #000000;">.</span><span style="color: #000000;">"</span><span style="color: #000000;">_</span><span style="color: #000000;">"</span><span style="color: #000000;">.</span><span style="color: #800080;">$num</span><span style="color: #000000;">;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$fileFilename</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;&nbsp;</span><span style="color: #800080;">$basename</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">.</span><span style="color: #000000;">'</span><span style="color: #000000;">.</span><span style="color: #800080;">$file</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">getExt();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$thumbFilename</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">small_</span><span style="color: #000000;">'</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$basename</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">.jpg</span><span style="color: #000000;">'</span><span style="color: #000000;">;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$arr_Exts</span><span style="color: #000000;">[</span><span style="color: #000000;">'</span><span style="color: #000000;">pics</span><span style="color: #000000;">'</span><span style="color: #000000;">][]&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$file</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">getExt();</span><span style="color: #008000;">//</span><span style="color: #008000;">可返回后缀名<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//&nbsp;生成缩略图（220&nbsp;x&nbsp;220&nbsp;像素大小）</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;FLEA</span><span style="color: #000000;">::</span><span style="color: #000000;">loadHelper(</span><span style="color: #000000;">'</span><span style="color: #000000;">image</span><span style="color: #000000;">'</span><span style="color: #000000;">);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$image</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=&amp;</span><span style="color: #000000;">&nbsp;FLEA_Helper_Image</span><span style="color: #000000;">::</span><span style="color: #000000;">createFromFile(</span><span style="color: #800080;">$file</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">getTmpName()</span><span style="color: #000000;">,</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$file</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">getExt());<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$image</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">crop(</span><span style="color: #000000;">100</span><span style="color: #000000;">,</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">100</span><span style="color: #000000;">,</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">true</span><span style="color: #000000;">,</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">true</span><span style="color: #000000;">);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$image</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">saveAsJpeg(</span><span style="color: #800080;">$thumbDir</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;DS&nbsp;</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$thumbFilename</span><span style="color: #000000;">);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$image</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">destory();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;</span><span style="color: #0000ff;">else</span><span style="color: #000000;">&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$basename</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$_COOKIE</span><span style="color: #000000;">[</span><span style="color: #000000;">'</span><span style="color: #000000;">id</span><span style="color: #000000;">'</span><span style="color: #000000;">]</span><span style="color: #000000;">.</span><span style="color: #000000;">"</span><span style="color: #000000;">_</span><span style="color: #000000;">"</span><span style="color: #000000;">.</span><span style="color: #800080;">$time</span><span style="color: #000000;">;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$fileFilename</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;&nbsp;</span><span style="color: #800080;">$basename</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">.</span><span style="color: #000000;">'</span><span style="color: #000000;">.</span><span style="color: #800080;">$file</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">getExt();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$arr_Exts</span><span style="color: #000000;">[</span><span style="color: #000000;">'</span><span style="color: #000000;">files</span><span style="color: #000000;">'</span><span style="color: #000000;">][]&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$file</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">getExt();</span><span style="color: #008000;">//</span><span style="color: #008000;">可返回后缀名</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">&nbsp;保存原始文件&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$file</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">move(</span><span style="color: #800080;">$fileDir</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;DS&nbsp;</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$fileFilename</span><span style="color: #000000;">);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008080;">chmod</span><span style="color: #000000;">(</span><span style="color: #800080;">$fileDir</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;DS&nbsp;</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$fileFilename</span><span style="color: #000000;">,</span><span style="color: #000000;">0777</span><span style="color: #000000;">);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">return</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$arr_Exts</span><span style="color: #000000;">;<br>&nbsp;&nbsp;&nbsp;&nbsp;}</span></div>
<br><img src ="http://www.phpweblog.net/fuyongjie/aggbug/5373.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.phpweblog.net/fuyongjie/" target="_blank">bestmost</a> 2008-07-18 12:19 <a href="http://www.phpweblog.net/fuyongjie/archive/2008/07/18/5373.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>我的登陆（涉及到 记住密码）</title><link>http://www.phpweblog.net/fuyongjie/archive/2008/07/15/5349.html</link><dc:creator>bestmost</dc:creator><author>bestmost</author><pubDate>Tue, 15 Jul 2008 05:47:00 GMT</pubDate><guid>http://www.phpweblog.net/fuyongjie/archive/2008/07/15/5349.html</guid><wfw:comment>http://www.phpweblog.net/fuyongjie/comments/5349.html</wfw:comment><comments>http://www.phpweblog.net/fuyongjie/archive/2008/07/15/5349.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.phpweblog.net/fuyongjie/comments/commentRss/5349.html</wfw:commentRss><trackback:ping>http://www.phpweblog.net/fuyongjie/services/trackbacks/5349.html</trackback:ping><description><![CDATA[<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #0000ff;">用fleaphp做的<br><br><br>
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #0000ff;">function</span><span style="color: #000000;">&nbsp;actionCheckLogin(){</span><span style="color: #008000;">//</span><span style="color: #008000;">登陆成功，选择性跳转</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$remember</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$_POST</span><span style="color: #000000;">[</span><span style="color: #000000;">'</span><span style="color: #000000;">remember</span><span style="color: #000000;">'</span><span style="color: #000000;">];<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$username</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$_POST</span><span style="color: #000000;">[username];<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$this</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">_member</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">checkLogin();<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">exit($_COOKIE['id']);</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">if</span><span style="color: #000000;">(</span><span style="color: #800080;">$remember</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">==</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">1</span><span style="color: #000000;">){</span><span style="color: #008000;">//</span><span style="color: #008000;">选中了&nbsp;记住密码</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008080;">setcookie</span><span style="color: #000000;">(</span><span style="color: #000000;">"</span><span style="color: #000000;">cookie_remember</span><span style="color: #000000;">"</span><span style="color: #000000;">,</span><span style="color: #000000;">"</span><span style="color: #000000;">yes</span><span style="color: #000000;">"</span><span style="color: #000000;">,</span><span style="color: #008080;">time</span><span style="color: #000000;">()</span><span style="color: #000000;">+</span><span style="color: #000000;">3600</span><span style="color: #000000;">*</span><span style="color: #000000;">20</span><span style="color: #000000;">*</span><span style="color: #000000;">356</span><span style="color: #000000;">*</span><span style="color: #000000;">3</span><span style="color: #000000;">);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008080;">setcookie</span><span style="color: #000000;">(</span><span style="color: #000000;">"</span><span style="color: #000000;">cookie_username</span><span style="color: #000000;">"</span><span style="color: #000000;">,</span><span style="color: #800080;">$username</span><span style="color: #000000;">,</span><span style="color: #008080;">time</span><span style="color: #000000;">()</span><span style="color: #000000;">+</span><span style="color: #000000;">3600</span><span style="color: #000000;">*</span><span style="color: #000000;">20</span><span style="color: #000000;">*</span><span style="color: #000000;">356</span><span style="color: #000000;">*</span><span style="color: #000000;">3</span><span style="color: #000000;">);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;</span><span style="color: #0000ff;">else</span><span style="color: #000000;">&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008080;">setcookie</span><span style="color: #000000;">(</span><span style="color: #000000;">"</span><span style="color: #000000;">cookie_remember</span><span style="color: #000000;">"</span><span style="color: #000000;">);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008080;">setcookie</span><span style="color: #000000;">(</span><span style="color: #000000;">"</span><span style="color: #000000;">cookie_username</span><span style="color: #000000;">"</span><span style="color: #000000;">);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">if</span><span style="color: #000000;">(</span><span style="color: #000000;">!</span><span style="color: #0000ff;">isset</span><span style="color: #000000;">(</span><span style="color: #800080;">$_COOKIE</span><span style="color: #000000;">[url])){<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;js_alert(</span><span style="color: #000000;">"</span><span style="color: #000000;">登陆成功</span><span style="color: #000000;">"</span><span style="color: #000000;">,</span><span style="color: #000000;">''</span><span style="color: #000000;">,</span><span style="color: #800080;">$this</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">_goBack());</span><span style="color: #008000;">//</span><span style="color: #008000;">进控制面板首页</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">else</span><span style="color: #000000;">{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;js_alert(</span><span style="color: #000000;">"</span><span style="color: #000000;">登陆成功,点&nbsp;确定&nbsp;跳转</span><span style="color: #000000;">"</span><span style="color: #000000;">,</span><span style="color: #008080;">setcookie</span><span style="color: #000000;">(</span><span style="color: #000000;">'</span><span style="color: #000000;">url</span><span style="color: #000000;">'</span><span style="color: #000000;">)</span><span style="color: #000000;">,</span><span style="color: #800080;">$_COOKIE</span><span style="color: #000000;">[url]);</span><span style="color: #008000;">//</span><span style="color: #008000;">进未登陆前的页面;同时销毁url的cookie</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br>&nbsp;&nbsp;&nbsp;&nbsp;}</span></div>
<br><br><br>function</span><span style="color: #000000;">&nbsp;checkLogin()&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$username</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$_POST</span><span style="color: #000000;">[username];<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$password</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;my_tq(</span><span style="color: #800080;">$_POST</span><span style="color: #000000;">[password]);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">echo&nbsp;$username;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//exit($password);</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">if</span><span style="color: #000000;">(</span><span style="color: #800080;">$password</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">==</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">111111</span><span style="color: #000000;">)&nbsp;{</span><span style="color: #008000;">//</span><span style="color: #008000;">初始密码111111,说明：1）上次已经设置了记住密码，不然不会有处置密码出现&nbsp;。2）不需要进行验证</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008080;">setcookie</span><span style="color: #000000;">(</span><span style="color: #000000;">"</span><span style="color: #000000;">username</span><span style="color: #000000;">"</span><span style="color: #000000;">,</span><span style="color: #800080;">$username</span><span style="color: #000000;">,</span><span style="color: #008080;">time</span><span style="color: #000000;">()</span><span style="color: #000000;">+</span><span style="color: #000000;">3600</span><span style="color: #000000;">,</span><span style="color: #000000;">'</span><span style="color: #000000;">/</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #800080;">$this</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">_getDomain());<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008080;">setcookie</span><span style="color: #000000;">(</span><span style="color: #000000;">"</span><span style="color: #000000;">name</span><span style="color: #000000;">"</span><span style="color: #000000;">,</span><span style="color: #800080;">$memberInfo</span><span style="color: #000000;">[</span><span style="color: #000000;">0</span><span style="color: #000000;">][mein_name]</span><span style="color: #000000;">,</span><span style="color: #008080;">time</span><span style="color: #000000;">()</span><span style="color: #000000;">+</span><span style="color: #000000;">3600</span><span style="color: #000000;">,</span><span style="color: #000000;">'</span><span style="color: #000000;">/</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #800080;">$this</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">_getDomain());<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008080;">setcookie</span><span style="color: #000000;">(</span><span style="color: #000000;">"</span><span style="color: #000000;">id</span><span style="color: #000000;">"</span><span style="color: #000000;">,</span><span style="color: #800080;">$memberInfo</span><span style="color: #000000;">[</span><span style="color: #000000;">0</span><span style="color: #000000;">][mein_id]</span><span style="color: #000000;">,</span><span style="color: #008080;">time</span><span style="color: #000000;">()</span><span style="color: #000000;">+</span><span style="color: #000000;">3600</span><span style="color: #000000;">,</span><span style="color: #000000;">'</span><span style="color: #000000;">/</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #800080;">$this</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">_getDomain());<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">echo</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$_COOKIE</span><span style="color: #000000;">[</span><span style="color: #000000;">'</span><span style="color: #000000;">id</span><span style="color: #000000;">'</span><span style="color: #000000;">];<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">return</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">true</span><span style="color: #000000;">;&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;</span><span style="color: #0000ff;">else</span><span style="color: #000000;">&nbsp;{</span><span style="color: #008000;">//</span><span style="color: #008000;">没有初始密码，说明上次没有设置&nbsp;记住密码&nbsp;，需重新登录。</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$password</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #008080;">md5</span><span style="color: #000000;">(</span><span style="color: #800080;">$password</span><span style="color: #000000;">);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$sql</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">SELECT&nbsp;mein_password,mein_name,mein_id&nbsp;FROM&nbsp;{$this-&gt;_tbMember-&gt;qtableName}&nbsp;WHERE&nbsp;mein_username='{$username}'</span><span style="color: #000000;">"</span><span style="color: #000000;">;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$memberInfo</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$this</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">_tbMember</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">findBySql(</span><span style="color: #800080;">$sql</span><span style="color: #000000;">);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">if</span><span style="color: #000000;">(</span><span style="color: #800080;">$password</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">==</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$memberInfo</span><span style="color: #000000;">[</span><span style="color: #000000;">0</span><span style="color: #000000;">][mein_password]){<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">echo&nbsp;$password."&lt;br&gt;";<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//echo&nbsp;$memberInfo[0][mein_password];<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//exit($memberInfo[0][mein_id]);</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008080;">setcookie</span><span style="color: #000000;">(</span><span style="color: #000000;">"</span><span style="color: #000000;">username</span><span style="color: #000000;">"</span><span style="color: #000000;">,</span><span style="color: #800080;">$username</span><span style="color: #000000;">,</span><span style="color: #008080;">time</span><span style="color: #000000;">()</span><span style="color: #000000;">+</span><span style="color: #000000;">3600</span><span style="color: #000000;">,</span><span style="color: #000000;">'</span><span style="color: #000000;">/</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #800080;">$this</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">_getDomain());<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008080;">setcookie</span><span style="color: #000000;">(</span><span style="color: #000000;">"</span><span style="color: #000000;">name</span><span style="color: #000000;">"</span><span style="color: #000000;">,</span><span style="color: #800080;">$memberInfo</span><span style="color: #000000;">[</span><span style="color: #000000;">0</span><span style="color: #000000;">][mein_name]</span><span style="color: #000000;">,</span><span style="color: #008080;">time</span><span style="color: #000000;">()</span><span style="color: #000000;">+</span><span style="color: #000000;">3600</span><span style="color: #000000;">,</span><span style="color: #000000;">'</span><span style="color: #000000;">/</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #800080;">$this</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">_getDomain());<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008080;">setcookie</span><span style="color: #000000;">(</span><span style="color: #000000;">"</span><span style="color: #000000;">id</span><span style="color: #000000;">"</span><span style="color: #000000;">,</span><span style="color: #800080;">$memberInfo</span><span style="color: #000000;">[</span><span style="color: #000000;">0</span><span style="color: #000000;">][mein_id]</span><span style="color: #000000;">,</span><span style="color: #008080;">time</span><span style="color: #000000;">()</span><span style="color: #000000;">+</span><span style="color: #000000;">3600</span><span style="color: #000000;">,</span><span style="color: #000000;">'</span><span style="color: #000000;">/</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #800080;">$this</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">_getDomain());<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">js_alert($_COOKIE['id']);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//exit($_COOKIE[id]);</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;</span><span style="color: #0000ff;">else</span><span style="color: #000000;">{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;js_alert(</span><span style="color: #000000;">"</span><span style="color: #000000;">用户名或密码不对，请重新登录</span><span style="color: #000000;">"</span><span style="color: #000000;">,</span><span style="color: #000000;">''</span><span style="color: #000000;">,</span><span style="color: #000000;">url(</span><span style="color: #000000;">"</span><span style="color: #000000;">Member</span><span style="color: #000000;">"</span><span style="color: #000000;">,</span><span style="color: #000000;">"</span><span style="color: #000000;">Login</span><span style="color: #000000;">"</span><span style="color: #000000;">));<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br>&nbsp;&nbsp;&nbsp;&nbsp;}<br><br>
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><span style="color: #0000ff;">&lt;!--这是前台页--&gt;<br><br>&lt;!</span><span style="color: #ff00ff;">DOCTYPE&nbsp;html&nbsp;PUBLIC&nbsp;"-//W3C//DTD&nbsp;XHTML&nbsp;1.0&nbsp;Transitional//EN"&nbsp;"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br></span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">html&nbsp;</span><span style="color: #ff0000;">xmlns</span><span style="color: #0000ff;">="http://www.w3.org/1999/xhtml"</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br></span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">head</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">meta&nbsp;</span><span style="color: #ff0000;">http-equiv</span><span style="color: #0000ff;">="content-type"</span><span style="color: #ff0000;">&nbsp;content</span><span style="color: #0000ff;">="text/html;charset=utf-8"</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">title</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;">电源网用户注册</span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">title</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">link&nbsp;</span><span style="color: #ff0000;">href</span><span style="color: #0000ff;">="/tpl/front/css/login.css"</span><span style="color: #ff0000;">&nbsp;rel</span><span style="color: #0000ff;">="stylesheet"</span><span style="color: #ff0000;">&nbsp;type</span><span style="color: #0000ff;">="text/css"</span><span style="color: #ff0000;">&nbsp;</span><span style="color: #0000ff;">/&gt;</span><span style="color: #000000;"><br></span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">head</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br></span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">body&nbsp;</span><span style="color: #ff0000;">onload</span><span style="color: #0000ff;">="document.getElementById('username').focus()"</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br><br></span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">div&nbsp;</span><span style="color: #ff0000;">class</span><span style="color: #0000ff;">=content</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br>{{include&nbsp;file&nbsp;=&nbsp;"front/_header.htm"}}<br><br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">div&nbsp;</span><span style="color: #ff0000;">class</span><span style="color: #0000ff;">=d1_left</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">form&nbsp;</span><span style="color: #ff0000;">name</span><span style="color: #0000ff;">="f"</span><span style="color: #ff0000;">&nbsp;action</span><span style="color: #0000ff;">="{{url&nbsp;controller=Member&nbsp;action=CheckLogin}}"</span><span style="color: #ff0000;">&nbsp;method</span><span style="color: #0000ff;">="post"</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">div&nbsp;</span><span style="color: #ff0000;">class</span><span style="color: #0000ff;">=d1_left_d1</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;">请输入登录名和密码，按&#8220;登录&#8221;即可。</span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">div</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">div&nbsp;</span><span style="color: #ff0000;">class</span><span style="color: #0000ff;">=d1_left_d2</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;">会员用户名：</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">input&nbsp;</span><span style="color: #ff0000;">type</span><span style="color: #0000ff;">="text"</span><span style="color: #ff0000;">&nbsp;name</span><span style="color: #0000ff;">="username"</span><span style="color: #ff0000;">&nbsp;id</span><span style="color: #0000ff;">="username"</span><span style="color: #ff0000;">&nbsp;onKeyDown</span><span style="color: #0000ff;">=forbide()</span><span style="color: #0000ff;">&gt;&lt;/</span><span style="color: #800000;">div</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">div&nbsp;</span><span style="color: #ff0000;">class</span><span style="color: #0000ff;">=d1_left_d3&nbsp;</span><span style="color: #ff0000;">id</span><span style="color: #0000ff;">=pwd</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;">密　　　码：</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">input&nbsp;</span><span style="color: #ff0000;">type</span><span style="color: #0000ff;">="password"</span><span style="color: #ff0000;">&nbsp;name</span><span style="color: #0000ff;">="password"</span><span style="color: #ff0000;">&nbsp;id</span><span style="color: #0000ff;">="password"</span><span style="color: #ff0000;">&nbsp;</span><span style="color: #0000ff;">&gt;&lt;/</span><span style="color: #800000;">div</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">div&nbsp;</span><span style="color: #ff0000;">class</span><span style="color: #0000ff;">=d1_left_d4</span><span style="color: #0000ff;">&gt;&lt;</span><span style="color: #800000;">input&nbsp;</span><span style="color: #ff0000;">type</span><span style="color: #0000ff;">=image&nbsp;</span><span style="color: #ff0000;">src</span><span style="color: #0000ff;">=/img/btn_login.gif&nbsp;</span><span style="color: #ff0000;">onclick</span><span style="color: #0000ff;">="document.f.submit()"</span><span style="color: #0000ff;">&gt;&lt;</span><span style="color: #800000;">input&nbsp;</span><span style="color: #ff0000;">type</span><span style="color: #0000ff;">='checkbox'&nbsp;</span><span style="color: #ff0000;">name</span><span style="color: #0000ff;">='remember'&nbsp;</span><span style="color: #ff0000;">id</span><span style="color: #0000ff;">='remember'&nbsp;</span><span style="color: #ff0000;">value</span><span style="color: #0000ff;">=1&nbsp;</span><span style="color: #ff0000;">onclick</span><span style="color: #0000ff;">="return&nbsp;noteMsg()"</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;">记住密码</span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">div</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">span&nbsp;</span><span style="color: #ff0000;">style</span><span style="color: #0000ff;">="margin:4px;font-size:0.8em;float:right;"</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;">登陆出现问题时，可试几下</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">a&nbsp;</span><span style="color: #ff0000;">href</span><span style="color: #0000ff;">="{{url&nbsp;controller=Member&nbsp;action=ClearCookie}}"</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;">清除缓存</span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">a</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;">后重新登录</span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">a</span><span style="color: #0000ff;">&gt;&lt;/</span><span style="color: #800000;">span</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">div</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br><br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">div&nbsp;</span><span style="color: #ff0000;">class</span><span style="color: #0000ff;">=d1_right</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">a&nbsp;</span><span style="color: #ff0000;">href</span><span style="color: #0000ff;">=/index.php?controller=Member&amp;action=regist</span><span style="color: #0000ff;">&gt;&lt;/</span><span style="color: #800000;">a</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">div</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br><br><br><br><br>{{include&nbsp;file&nbsp;=&nbsp;"front/_footer.htm"}}<br></span><span style="color: #0000ff;">&lt;</span><span style="color: #800000;">script</span><span style="color: #0000ff;">&gt;</span><span style="background-color: #f5f5f5; color: #000000;"><br></span><span style="background-color: #f5f5f5; color: #0000ff;">function</span><span style="background-color: #f5f5f5; color: #000000;">&nbsp;noteMsg()&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="background-color: #f5f5f5; color: #0000ff;">if</span><span style="background-color: #f5f5f5; color: #000000;">(document.getElementById('remember').checked&nbsp;</span><span style="background-color: #f5f5f5; color: #000000;">==</span><span style="background-color: #f5f5f5; color: #000000;">&nbsp;</span><span style="background-color: #f5f5f5; color: #0000ff;">true</span><span style="background-color: #f5f5f5; color: #000000;">){<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="background-color: #f5f5f5; color: #0000ff;">return</span><span style="background-color: #f5f5f5; color: #000000;">&nbsp;confirm(</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">记住密码有一定的安全隐患，请谨慎，仍要记住密码点确定，否则点取消</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">);<br>&nbsp;&nbsp;&nbsp;&nbsp;}<br>}<br></span><span style="background-color: #f5f5f5; color: #0000ff;">function</span><span style="background-color: #f5f5f5; color: #000000;">&nbsp;forbide()&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="background-color: #f5f5f5; color: #0000ff;">if</span><span style="background-color: #f5f5f5; color: #000000;">(document.getElementById('username').value&nbsp;</span><span style="background-color: #f5f5f5; color: #000000;">==</span><span style="background-color: #f5f5f5; color: #000000;">&nbsp;</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">{{$cookie_username}}</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">)&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;document.getElementById('password').disabled&nbsp;</span><span style="background-color: #f5f5f5; color: #000000;">=</span><span style="background-color: #f5f5f5; color: #000000;">&nbsp;</span><span style="background-color: #f5f5f5; color: #0000ff;">true</span><span style="background-color: #f5f5f5; color: #000000;">;<br>&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;</span><span style="background-color: #f5f5f5; color: #0000ff;">else</span><span style="background-color: #f5f5f5; color: #000000;">&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;document.getElementById('password').disabled&nbsp;</span><span style="background-color: #f5f5f5; color: #000000;">=</span><span style="background-color: #f5f5f5; color: #000000;">&nbsp;</span><span style="background-color: #f5f5f5; color: #0000ff;">false</span><span style="background-color: #f5f5f5; color: #000000;">;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;document.getElementById('password').value&nbsp;</span><span style="background-color: #f5f5f5; color: #000000;">=</span><span style="background-color: #f5f5f5; color: #000000;">&nbsp;</span><span style="background-color: #f5f5f5; color: #000000;">""</span><span style="background-color: #f5f5f5; color: #000000;">;<br>&nbsp;&nbsp;&nbsp;&nbsp;}<br>&nbsp;&nbsp;&nbsp;&nbsp;<br>}<br></span><span style="background-color: #f5f5f5; color: #0000ff;">function</span><span style="background-color: #f5f5f5; color: #000000;">&nbsp;set()&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="background-color: #f5f5f5; color: #0000ff;">if</span><span style="background-color: #f5f5f5; color: #000000;">(</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">{{$cookie_remember}}</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">&nbsp;</span><span style="background-color: #f5f5f5; color: #000000;">==</span><span style="background-color: #f5f5f5; color: #000000;">&nbsp;'yes'){<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;document.getElementById('username').value&nbsp;</span><span style="background-color: #f5f5f5; color: #000000;">=</span><span style="background-color: #f5f5f5; color: #000000;">&nbsp;</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">{{$cookie_username}}</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;document.getElementById('password').value&nbsp;</span><span style="background-color: #f5f5f5; color: #000000;">=</span><span style="background-color: #f5f5f5; color: #000000;">&nbsp;</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">111111</span><span style="background-color: #f5f5f5; color: #000000;">"</span><span style="background-color: #f5f5f5; color: #000000;">;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;document.getElementById('password').disabled&nbsp;</span><span style="background-color: #f5f5f5; color: #000000;">=</span><span style="background-color: #f5f5f5; color: #000000;">&nbsp;</span><span style="background-color: #f5f5f5; color: #0000ff;">true</span><span style="background-color: #f5f5f5; color: #000000;">;<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;document.getElementById('remember').checked&nbsp;</span><span style="background-color: #f5f5f5; color: #000000;">=</span><span style="background-color: #f5f5f5; color: #000000;">&nbsp;</span><span style="background-color: #f5f5f5; color: #0000ff;">true</span><span style="background-color: #f5f5f5; color: #000000;">;<br>&nbsp;&nbsp;&nbsp;&nbsp;}<br>}<br><br>set();<br></span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">script</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br></span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">div</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br></span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">body</span><span style="color: #0000ff;">&gt;</span><span style="color: #000000;"><br></span><span style="color: #0000ff;">&lt;/</span><span style="color: #800000;">html</span><span style="color: #0000ff;">&gt;</span></div>
<br>
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--></div>
</span></div>
<br><img src ="http://www.phpweblog.net/fuyongjie/aggbug/5349.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.phpweblog.net/fuyongjie/" target="_blank">bestmost</a> 2008-07-15 13:47 <a href="http://www.phpweblog.net/fuyongjie/archive/2008/07/15/5349.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>smarty，fleaphp 多目录引入、多入口</title><link>http://www.phpweblog.net/fuyongjie/archive/2008/07/11/5331.html</link><dc:creator>bestmost</dc:creator><author>bestmost</author><pubDate>Fri, 11 Jul 2008 02:30:00 GMT</pubDate><guid>http://www.phpweblog.net/fuyongjie/archive/2008/07/11/5331.html</guid><wfw:comment>http://www.phpweblog.net/fuyongjie/comments/5331.html</wfw:comment><comments>http://www.phpweblog.net/fuyongjie/archive/2008/07/11/5331.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.phpweblog.net/fuyongjie/comments/commentRss/5331.html</wfw:commentRss><trackback:ping>http://www.phpweblog.net/fuyongjie/services/trackbacks/5331.html</trackback:ping><description><![CDATA[<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #000000;">"</span><span style="color: #000000;">viewConfig</span><span style="color: #000000;">"</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=&gt;</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">array</span><span style="color: #000000;">(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">smartyDir</span><span style="color: #000000;">"</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">=&gt;</span><span style="color: #000000;">&nbsp;</span><span style="color: #008080;">realpath</span><span style="color: #000000;">(</span><span style="color: #800080;">$dirname</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">/../../WebLibs/SMARTY</span><span style="color: #000000;">"</span><span style="color: #000000;">)</span><span style="color: #000000;">,</span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">template_dir</span><span style="color: #000000;">"</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">=&gt;</span><span style="color: #000000;">&nbsp;</span><span style="color: #008080;">realpath</span><span style="color: #000000;">(</span><span style="color: #800080;">$dirname</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">/../../WebRoot/$foldername/tpl</span><span style="color: #000000;">"</span><span style="color: #000000;">)</span><span style="color: #000000;">,</span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">compile_dir</span><span style="color: #000000;">"</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">=&gt;</span><span style="color: #000000;">&nbsp;</span><span style="color: #008080;">realpath</span><span style="color: #000000;">(</span><span style="color: #800080;">$dirname</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">/../../WebRoot/$foldername/tpl_c</span><span style="color: #000000;">"</span><span style="color: #000000;">)</span><span style="color: #000000;">,</span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">template_dir</span><span style="color: #000000;">"</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">=&gt;</span><span style="color: #000000;">&nbsp;</span><span style="color: #008080;">realpath</span><span style="color: #000000;">(</span><span style="color: #800080;">$dirname</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">/../../WebRoot/member/tpl</span><span style="color: #000000;">"</span><span style="color: #000000;">)</span><span style="color: #000000;">,</span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">compile_dir</span><span style="color: #000000;">"</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">=&gt;</span><span style="color: #000000;">&nbsp;</span><span style="color: #008080;">realpath</span><span style="color: #000000;">(</span><span style="color: #800080;">$dirname</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">/../../WebRoot/member/tpl_c</span><span style="color: #000000;">"</span><span style="color: #000000;">)</span><span style="color: #000000;">,<br><span style="color: #049027;">//上边有两个</span></span><span style="color: #049027;">compile_dir和两个template_dir，下边有两个import();可解决跨多个二级域名的访问问题</span><span style="color: #000000;"></span><br><span style="color: #000000;">FLEA::loadAppInf($appInf);<br>FLEA::import(APP_DIR);<br>FLEA::import(Member_APP_DIR);<br>FLEA::runMVC();<br></span></div>
<br><img src ="http://www.phpweblog.net/fuyongjie/aggbug/5331.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.phpweblog.net/fuyongjie/" target="_blank">bestmost</a> 2008-07-11 10:30 <a href="http://www.phpweblog.net/fuyongjie/archive/2008/07/11/5331.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>FleaPHP数据库操作的Condition分析</title><link>http://www.phpweblog.net/fuyongjie/archive/2008/07/05/5288.html</link><dc:creator>bestmost</dc:creator><author>bestmost</author><pubDate>Sat, 05 Jul 2008 02:01:00 GMT</pubDate><guid>http://www.phpweblog.net/fuyongjie/archive/2008/07/05/5288.html</guid><wfw:comment>http://www.phpweblog.net/fuyongjie/comments/5288.html</wfw:comment><comments>http://www.phpweblog.net/fuyongjie/archive/2008/07/05/5288.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.phpweblog.net/fuyongjie/comments/commentRss/5288.html</wfw:commentRss><trackback:ping>http://www.phpweblog.net/fuyongjie/services/trackbacks/5288.html</trackback:ping><description><![CDATA[<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #000000;"><br>FleaPHP数据库操作的Condition分析<br>在我们使用fleaphp的过程中我们用到最多的可能TDG里面的find之类的函数</span><span style="color: #000000;">,</span><span style="color: #000000;">而里面的condition的编写表示不大理解</span><span style="color: #000000;">,</span><span style="color: #000000;">这里我就大概的讲解一下Condition的使用方式<br><br></span><span style="color: #800080;">$condition主要有三个格式</span><span style="color: #000000;"><br></span><span style="color: #000000;">1</span><span style="color: #000000;">.</span><span style="color: #000000;">数字<br></span><span style="color: #800080;">$condition</span><span style="color: #000000;">=</span><span style="color: #000000;">2</span><span style="color: #000000;"><br>数字的意思就是根据主键</span><span style="color: #000000;">=</span><span style="color: #000000;">2这样的形式去搜索<br><br></span><span style="color: #000000;">2</span><span style="color: #000000;">.</span><span style="color: #000000;">字符串<br></span><span style="color: #800080;">$c</span><span style="color: #000000;"><br>其实这个就是我们在平时写sql的时候where之后的那个条件</span><span style="color: #000000;">,</span><span style="color: #000000;">更加复杂的如下<br></span><span style="color: #800080;">$c</span><span style="color: #000000;">;<br></span><span style="color: #800080;">$cmailto</span><span style="color: #000000;">:</span><span style="color: #000000;">`email`</span><span style="color: #000000;">=</span><span style="color: #000000;">'</span><span style="color: #000000;">xiemengjun@gmail.com</span><span style="color: #000000;">'"</span><span style="color: #000000;">&gt;`email`='xiemengjun@gmail.com')</span><span style="color: #000000;">"</span><span style="color: #000000;">;<br><br></span><span style="color: #000000;">3</span><span style="color: #000000;">.</span><span style="color: #000000;">数组形式<br></span><span style="color: #000000;">3</span><span style="color: #000000;">.</span><span style="color: #000000;">1数组包含key和value<br></span><span style="color: #800080;">$condition</span><span style="color: #000000;">=</span><span style="color: #0000ff;">array</span><span style="color: #000000;">(</span><span style="color: #000000;">'</span><span style="color: #000000;">username</span><span style="color: #000000;">'</span><span style="color: #000000;">=&gt;</span><span style="color: #000000;">'</span><span style="color: #000000;">xiemengjun</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #000000;">'</span><span style="color: #000000;">password</span><span style="color: #000000;">'</span><span style="color: #000000;">=&gt;</span><span style="color: #000000;">'</span><span style="color: #000000;">123456</span><span style="color: #000000;">'</span><span style="color: #000000;">);<br>上面的就是key</span><span style="color: #000000;">=</span><span style="color: #000000;">value&nbsp;然后用and组合&nbsp;</span><span style="color: #000000;">,</span><span style="color: #000000;">上面这个数组的意思就是<br></span><span style="color: #800080;">$c</span><span style="color: #000000;">;<br><br></span><span style="color: #000000;">3</span><span style="color: #000000;">.</span><span style="color: #000000;">2数组元素是字符串<br></span><span style="color: #800080;">$conditions</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">array</span><span style="color: #000000;">(</span><span style="color: #000000;">"</span><span style="color: #000000;">username&nbsp;&lt;&gt;&nbsp;'xiemengjun'</span><span style="color: #000000;">"</span><span style="color: #000000;">,</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">"</span><span style="color: #000000;">sex&nbsp;=&nbsp;'male'</span><span style="color: #000000;">"</span><span style="color: #000000;">);<br>上面的意思就是用and组合<br></span><span style="color: #800080;">$c</span><span style="color: #000000;">;<br><br></span><span style="color: #000000;">3</span><span style="color: #000000;">.</span><span style="color: #000000;">3两种混合方式<br></span><span style="color: #800080;">$conditions</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">array</span><span style="color: #000000;">(<br></span><span style="color: #000000;">'</span><span style="color: #000000;">leve_ix&nbsp;&gt;&nbsp;3</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #000000;"><br></span><span style="color: #000000;">'</span><span style="color: #000000;">sex</span><span style="color: #000000;">'</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=&gt;</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">male</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #000000;"><br>);<br>上面的意思就是<br></span><span style="color: #800080;">$c</span><span style="color: #000000;">;<br><br></span><span style="color: #000000;">3</span><span style="color: #000000;">.</span><span style="color: #000000;">4in操作<br>我们有时候要用到in这样的操作</span><span style="color: #000000;">,</span><span style="color: #000000;">那么在condition里面怎么写呢</span><span style="color: #000000;">?</span><span style="color: #000000;"><br></span><span style="color: #800080;">$condition</span><span style="color: #000000;">=</span><span style="color: #0000ff;">array</span><span style="color: #000000;">(</span><span style="color: #000000;">'</span><span style="color: #000000;">in()</span><span style="color: #000000;">'</span><span style="color: #000000;">=&gt;</span><span style="color: #0000ff;">array</span><span style="color: #000000;">(</span><span style="color: #000000;">1</span><span style="color: #000000;">,</span><span style="color: #000000;">2</span><span style="color: #000000;">,</span><span style="color: #000000;">3</span><span style="color: #000000;">))<br>在默认情况下是主键在后面数组里面搜索<br>上面的意思就是id&nbsp;in&nbsp;(&nbsp;</span><span style="color: #000000;">1</span><span style="color: #000000;">,</span><span style="color: #000000;">2</span><span style="color: #000000;">,</span><span style="color: #000000;">3</span><span style="color: #000000;">&nbsp;)<br><br>那么如果不是主键的话怎么写了呢</span><span style="color: #000000;">?</span><span style="color: #000000;"><br></span><span style="color: #800080;">$condition</span><span style="color: #000000;">=</span><span style="color: #0000ff;">array</span><span style="color: #000000;">(</span><span style="color: #000000;">'</span><span style="color: #000000;">in()</span><span style="color: #000000;">'</span><span style="color: #000000;">=&gt;</span><span style="color: #0000ff;">array</span><span style="color: #000000;">(</span><span style="color: #000000;">'</span><span style="color: #000000;">username</span><span style="color: #000000;">'</span><span style="color: #000000;">=&gt;</span><span style="color: #0000ff;">array</span><span style="color: #000000;">(</span><span style="color: #000000;">'</span><span style="color: #000000;">sss</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #000000;">'</span><span style="color: #000000;">ddd</span><span style="color: #000000;">'</span><span style="color: #000000;">)))<br>上面的意思就是username&nbsp;in(</span><span style="color: #000000;">'</span><span style="color: #000000;">sss</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #000000;">'</span><span style="color: #000000;">ddd</span><span style="color: #000000;">'</span><span style="color: #000000;">);<br><br></span><span style="color: #000000;">3</span><span style="color: #000000;">.</span><span style="color: #000000;">5自定义组合<br>大家看到了上面的数组都是用and组合的</span><span style="color: #000000;">,</span><span style="color: #000000;">那么我们想用or组合呢</span><span style="color: #000000;">?</span><span style="color: #000000;">怎么办呢<br></span><span style="color: #800080;">$conditions</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #0000ff;">array</span><span style="color: #000000;">(<br></span><span style="color: #0000ff;">array</span><span style="color: #000000;">(</span><span style="color: #000000;">'</span><span style="color: #000000;">Field1</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #000000;">'</span><span style="color: #000000;">Value1</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #000000;">'</span><span style="color: #000000;">LIKE</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #000000;">'</span><span style="color: #000000;">OR</span><span style="color: #000000;">'</span><span style="color: #000000;">)</span><span style="color: #000000;">,</span><span style="color: #000000;"><br></span><span style="color: #0000ff;">array</span><span style="color: #000000;">(</span><span style="color: #000000;">'</span><span style="color: #000000;">Field2</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #000000;">'</span><span style="color: #000000;">Value2</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #000000;">'</span><span style="color: #000000;">=</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #000000;">'</span><span style="color: #000000;">OR</span><span style="color: #000000;">'</span><span style="color: #000000;">)</span><span style="color: #000000;">,</span><span style="color: #000000;"><br></span><span style="color: #0000ff;">array</span><span style="color: #000000;">(</span><span style="color: #000000;">'</span><span style="color: #000000;">Field3</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #000000;">'</span><span style="color: #000000;">Value3</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #000000;">'</span><span style="color: #000000;">&gt;</span><span style="color: #000000;">'</span><span style="color: #000000;">)</span><span style="color: #000000;">,</span><span style="color: #000000;"><br>);<br>上面的意思就是<br></span><span style="color: #800080;">$c</span><span style="color: #000000;"><br><br>是不是觉得fleaphp里面的condition很强大</span><span style="color: #000000;"><img src="http://www.phpweblog.net/Images/dot.gif">.</span><span style="color: #000000;"><br><br></span><span style="color: #000000;">4</span><span style="color: #000000;">.</span><span style="color: #000000;">关联表限制条件<br>上面我介绍的都是相对于主表而言的</span><span style="color: #000000;">,</span><span style="color: #000000;">那么我们如何来操作关联表的条件呢</span><span style="color: #000000;">?</span><span style="color: #000000;">我们来看下面<br></span><span style="color: #800080;">$conditions</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #0000ff;">array</span><span style="color: #000000;">(<br></span><span style="color: #0000ff;">array</span><span style="color: #000000;">(</span><span style="color: #000000;">'</span><span style="color: #000000;">Field1</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #000000;">'</span><span style="color: #000000;">Value1</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #000000;">'</span><span style="color: #000000;">LIKE</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #000000;">'</span><span style="color: #000000;">OR</span><span style="color: #000000;">'</span><span style="color: #000000;">)</span><span style="color: #000000;">,</span><span style="color: #000000;"><br></span><span style="color: #0000ff;">array</span><span style="color: #000000;">(</span><span style="color: #000000;">'</span><span style="color: #000000;">mappingName.Field</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #800080;">$this</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">primaryKey</span><span style="color: #000000;">,</span><span style="color: #000000;">'</span><span style="color: #000000;">=</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #000000;">'</span><span style="color: #000000;">OR</span><span style="color: #000000;">'</span><span style="color: #000000;">)</span><span style="color: #000000;">,</span><span style="color: #000000;">&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">这里的field是指关联表中的字段</span><span style="color: #008000;"><br></span><span style="color: #0000ff;">array</span><span style="color: #000000;">(</span><span style="color: #000000;">'</span><span style="color: #000000;">Field2</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #000000;">'</span><span style="color: #000000;">Value2</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #000000;">'</span><span style="color: #000000;">&gt;</span><span style="color: #000000;">'</span><span style="color: #000000;">)</span><span style="color: #000000;">,</span><span style="color: #000000;"><br>);<br><br>上面的mappingName就是我们在写关联的时候书写的名字<br>整个的条件的意思就是<br></span><span style="color: #800080;">$c</span><span style="color: #000000;"><br><br><br>就我应用到的condition大概就是上面这一些了</span><span style="color: #000000;">,</span><span style="color: #000000;">大家如果还有其他的高级应用希望指点一二</span><span style="color: #000000;">!</span><span style="color: #000000;"><br></span></div>
<br><img src ="http://www.phpweblog.net/fuyongjie/aggbug/5288.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.phpweblog.net/fuyongjie/" target="_blank">bestmost</a> 2008-07-05 10:01 <a href="http://www.phpweblog.net/fuyongjie/archive/2008/07/05/5288.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【数据库】 查询条件（$conditions） 的写法</title><link>http://www.phpweblog.net/fuyongjie/archive/2008/07/05/5287.html</link><dc:creator>bestmost</dc:creator><author>bestmost</author><pubDate>Sat, 05 Jul 2008 01:58:00 GMT</pubDate><guid>http://www.phpweblog.net/fuyongjie/archive/2008/07/05/5287.html</guid><wfw:comment>http://www.phpweblog.net/fuyongjie/comments/5287.html</wfw:comment><comments>http://www.phpweblog.net/fuyongjie/archive/2008/07/05/5287.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.phpweblog.net/fuyongjie/comments/commentRss/5287.html</wfw:commentRss><trackback:ping>http://www.phpweblog.net/fuyongjie/services/trackbacks/5287.html</trackback:ping><description><![CDATA[<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br><br>Code highlighting produced by Actipro CodeHighlighter (freeware)<br>http://www.CodeHighlighter.com/<br><br>--><span style="color: #000000;"></span><span style="color: #000000;"><br>原文由&nbsp;hegz&nbsp;兄发表于http</span><span style="color: #000000;">:</span><span style="color: #008000;">//</span><span style="color: #008000;">www.fleaphp.org/bbs/viewthread.php?tid=1751</span><span style="color: #008000;"><br></span><span style="color: #000000;"><br>在FleaPHP中，凡是用到数据库查询的函数，都需要查询条件参数</span><span style="color: #800080;">$conditions</span><span style="color: #000000;">，现讲述用法如下：<br><br>举例：<br>view&nbsp;plaincopy&nbsp;to&nbsp;clipboardprint</span><span style="color: #000000;">?</span><span style="color: #000000;"><br><br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">1</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">&nbsp;$conditions&nbsp;保存查询条件&nbsp;&nbsp;</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">2</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$conditions</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">level_ix&nbsp;&gt;&nbsp;1</span><span style="color: #000000;">'</span><span style="color: #000000;">;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">3</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">&nbsp;$tableOrders&nbsp;是一个订单数据表的表数据入口对象&nbsp;&nbsp;</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">4</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$order</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$tableOrders</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">find(</span><span style="color: #800080;">$conditions</span><span style="color: #000000;">,</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">created&nbsp;DESC</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">id,&nbsp;title,&nbsp;body</span><span style="color: #000000;">'</span><span style="color: #000000;">);&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">5</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$conditions</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">array</span><span style="color: #000000;">(</span><span style="color: #000000;">'</span><span style="color: #000000;">username</span><span style="color: #000000;">'</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=&gt;</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">dualface</span><span style="color: #000000;">'</span><span style="color: #000000;">);&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">6</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">&nbsp;$tableUsers&nbsp;是一个用户信息数据表的表数据入口对象&nbsp;&nbsp;</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">7</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;</span><span style="color: #800080;">$user</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$tableUsers</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">find(</span><span style="color: #800080;">$conditions</span><span style="color: #000000;">);&nbsp;&nbsp;<br><br>&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">&nbsp;$conditions&nbsp;保存查询条件</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;</span><span style="color: #800080;">$conditions</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">level_ix&nbsp;&gt;&nbsp;1</span><span style="color: #000000;">'</span><span style="color: #000000;">;<br>&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">&nbsp;$tableOrders&nbsp;是一个订单数据表的表数据入口对象</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;</span><span style="color: #800080;">$order</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$tableOrders</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">find(</span><span style="color: #800080;">$conditions</span><span style="color: #000000;">,</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">created&nbsp;DESC</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">id,&nbsp;title,&nbsp;body</span><span style="color: #000000;">'</span><span style="color: #000000;">);<br>&nbsp;&nbsp;</span><span style="color: #800080;">$conditions</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">array</span><span style="color: #000000;">(</span><span style="color: #000000;">'</span><span style="color: #000000;">username</span><span style="color: #000000;">'</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=&gt;</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">dualface</span><span style="color: #000000;">'</span><span style="color: #000000;">);<br>&nbsp;&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">&nbsp;$tableUsers&nbsp;是一个用户信息数据表的表数据入口对象</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;</span><span style="color: #800080;">$user</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$tableUsers</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">find(</span><span style="color: #800080;">$conditions</span><span style="color: #000000;">);<br><br></span><span style="color: #800080;">$conditions</span><span style="color: #000000;">&nbsp;参数可以是整数、字符串和数组三种类型：<br><br></span><span style="color: #000000;">1</span><span style="color: #000000;">.</span><span style="color: #000000;">如果&nbsp;</span><span style="color: #800080;">$conditions</span><span style="color: #000000;">&nbsp;参数是一个整数，则假定该整数为主键字段值。<br>view&nbsp;plaincopy&nbsp;to&nbsp;clipboardprint</span><span style="color: #000000;">?</span><span style="color: #000000;"><br><br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">1</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">&nbsp;查询主键字段值为1的记录&nbsp;&nbsp;</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">2</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$user</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$tableUsers</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">find(</span><span style="color: #000000;">1</span><span style="color: #000000;">);&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">3</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">&nbsp;如果主键字段名为&#8220;id&#8221;，则生成的where字句为&#8220;WHERE&nbsp;`id`&nbsp;=&nbsp;1&#8221;&nbsp;&nbsp;<br><br>//&nbsp;查询主键字段值为1的记录</span><span style="color: #008000;"><br></span><span style="color: #800080;">$user</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$tableUsers</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">find(</span><span style="color: #000000;">1</span><span style="color: #000000;">);<br></span><span style="color: #008000;">//</span><span style="color: #008000;">&nbsp;如果主键字段名为&#8220;id&#8221;，则生成的where字句为&#8220;WHERE&nbsp;`id`&nbsp;=&nbsp;1&#8221;</span><span style="color: #008000;"><br></span><span style="color: #000000;"><br></span><span style="color: #000000;">2</span><span style="color: #000000;">.</span><span style="color: #000000;">如果&nbsp;</span><span style="color: #800080;">$conditions</span><span style="color: #000000;">&nbsp;参数是一个字符串，则该字符串将直接作为查询条件，这种方式可以支持最灵活的查询条件。&nbsp;例如：<br>view&nbsp;plaincopy&nbsp;to&nbsp;clipboardprint</span><span style="color: #000000;">?</span><span style="color: #000000;"><br><br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">1</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$conditions</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">id&nbsp;&lt;&nbsp;3</span><span style="color: #000000;">'</span><span style="color: #000000;">&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">2</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$user</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$tableUsers</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">find(</span><span style="color: #800080;">$conditions</span><span style="color: #000000;">);&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">3</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">生成的where字句为&#8220;WHERE&nbsp;id&nbsp;&lt;&nbsp;3&#8221;&nbsp;&nbsp;</span><span style="color: #008000;"><br></span><span style="color: #000000;"><br></span><span style="color: #800080;">$conditions</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">id&nbsp;&lt;&nbsp;3</span><span style="color: #000000;">'</span><span style="color: #000000;"><br></span><span style="color: #800080;">$user</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$tableUsers</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">find(</span><span style="color: #800080;">$conditions</span><span style="color: #000000;">);<br></span><span style="color: #008000;">//</span><span style="color: #008000;">生成的where字句为&#8220;WHERE&nbsp;id&nbsp;&lt;&nbsp;3&#8221;</span><span style="color: #008000;"><br></span><span style="color: #000000;"><br></span><span style="color: #000000;">3.1</span><span style="color: #000000;">.</span><span style="color: #000000;">如果&nbsp;</span><span style="color: #800080;">$conditions</span><span style="color: #000000;">&nbsp;参数是一个数组，且指定了键名和值，则查询条件中字段名为键名，字段值等于键值。例如：<br>view&nbsp;plaincopy&nbsp;to&nbsp;clipboardprint</span><span style="color: #000000;">?</span><span style="color: #000000;"><br><br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">1</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">&nbsp;查询id字段值为3的记录&nbsp;&nbsp;</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">2</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$conditions</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">array</span><span style="color: #000000;">(&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">3</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">id</span><span style="color: #000000;">'</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=&gt;</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">1</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #000000;">&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">4</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;);&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">5</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$user</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$tableUsers</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">find(</span><span style="color: #800080;">$conditions</span><span style="color: #000000;">);&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">6</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">生成的where字句为&#8220;WHERE&nbsp;`id`&nbsp;=&nbsp;1&#8221;&nbsp;&nbsp;<br><br>//&nbsp;查询id字段值为3的记录</span><span style="color: #008000;"><br></span><span style="color: #800080;">$conditions</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">array</span><span style="color: #000000;">(<br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">id</span><span style="color: #000000;">'</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=&gt;</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">1</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #000000;"><br>&nbsp;&nbsp;);<br></span><span style="color: #800080;">$user</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$tableUsers</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">find(</span><span style="color: #800080;">$conditions</span><span style="color: #000000;">);<br></span><span style="color: #008000;">//</span><span style="color: #008000;">生成的where字句为&#8220;WHERE&nbsp;`id`&nbsp;=&nbsp;1&#8221;</span><span style="color: #008000;"><br></span><span style="color: #000000;"><br></span><span style="color: #000000;">3.2</span><span style="color: #000000;">.</span><span style="color: #000000;">如果&nbsp;</span><span style="color: #800080;">$conditions</span><span style="color: #000000;">&nbsp;参数是一个数组，但其中的元素没有键名，&nbsp;则假定键值为自定义查询条件，例如：<br>view&nbsp;plaincopy&nbsp;to&nbsp;clipboardprint</span><span style="color: #000000;">?</span><span style="color: #000000;"><br><br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">1</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$conditions</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">array</span><span style="color: #000000;">(</span><span style="color: #000000;">'</span><span style="color: #000000;">id&nbsp;=&nbsp;1</span><span style="color: #000000;">'</span><span style="color: #000000;">);&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">2</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">&nbsp;生成的where字句为&#8220;WHERE&nbsp;`id`&nbsp;=&nbsp;1&#8221;&nbsp;&nbsp;</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">3</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$user</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$tableUsers</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">find(</span><span style="color: #800080;">$conditions</span><span style="color: #000000;">);&nbsp;&nbsp;<br><br></span><span style="color: #800080;">$conditions</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">array</span><span style="color: #000000;">(</span><span style="color: #000000;">'</span><span style="color: #000000;">id&nbsp;=&nbsp;1</span><span style="color: #000000;">'</span><span style="color: #000000;">);<br></span><span style="color: #008000;">//</span><span style="color: #008000;">&nbsp;生成的where字句为&#8220;WHERE&nbsp;`id`&nbsp;=&nbsp;1&#8221;</span><span style="color: #008000;"><br></span><span style="color: #800080;">$user</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$tableUsers</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">find(</span><span style="color: #800080;">$conditions</span><span style="color: #000000;">);<br><br></span><span style="color: #000000;">3.3</span><span style="color: #000000;">.</span><span style="color: #800080;">$conditions</span><span style="color: #000000;">&nbsp;为数组时，可以混用字符串和键值对两种风格：<br>view&nbsp;plaincopy&nbsp;to&nbsp;clipboardprint</span><span style="color: #000000;">?</span><span style="color: #000000;"><br><br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">1</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$conditions</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">array</span><span style="color: #000000;">(&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">2</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">id&nbsp;&lt;&nbsp;3</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #000000;">&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">3</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">sex</span><span style="color: #000000;">'</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=&gt;</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">male</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #000000;">&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">4</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;);&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">5</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$user</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$tableUsers</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">find(</span><span style="color: #800080;">$conditions</span><span style="color: #000000;">);&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">6</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">&nbsp;生成的where字句为&#8220;id&nbsp;&lt;&nbsp;3&nbsp;AND&nbsp;`sex`&nbsp;=&nbsp;'male'&#8221;&nbsp;&nbsp;</span><span style="color: #008000;"><br></span><span style="color: #000000;"><br></span><span style="color: #800080;">$conditions</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">array</span><span style="color: #000000;">(<br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">id&nbsp;&lt;&nbsp;3</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #000000;"><br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">sex</span><span style="color: #000000;">'</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=&gt;</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">male</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #000000;"><br>);<br></span><span style="color: #800080;">$user</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$tableUsers</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">find(</span><span style="color: #800080;">$conditions</span><span style="color: #000000;">);<br></span><span style="color: #008000;">//</span><span style="color: #008000;">&nbsp;生成的where字句为&#8220;id&nbsp;&lt;&nbsp;3&nbsp;AND&nbsp;`sex`&nbsp;=&nbsp;'male'&#8221;</span><span style="color: #008000;"><br></span><span style="color: #000000;"><br></span><span style="color: #800080;">$conditions</span><span style="color: #000000;">&nbsp;为数组时，多个查询条件之间将使用&nbsp;AND&nbsp;布尔运算符进行连接。<br><br></span><span style="color: #000000;">3.4</span><span style="color: #000000;">.</span><span style="color: #000000;">&#8220;in()&#8221;查询在FleaPHP中的实现。（原文由DreamPig发表于http</span><span style="color: #000000;">:</span><span style="color: #008000;">//</span><span style="color: #008000;">www.fleaphp.org/bbs/viewthread.php?tid=2168）</span><span style="color: #008000;"><br></span><span style="color: #000000;">我们有时候要用到in这样的操作</span><span style="color: #000000;">,</span><span style="color: #000000;">那么在condition里面怎么写呢</span><span style="color: #000000;">?</span><span style="color: #000000;"><br>view&nbsp;plaincopy&nbsp;to&nbsp;clipboardprint</span><span style="color: #000000;">?</span><span style="color: #000000;"><br><br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">1</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">&nbsp;假如主键名为&#8220;id&#8221;，需要查询id的值为1、2、3其中之一，则可以这样写：&nbsp;&nbsp;</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">2</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$condition</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">array</span><span style="color: #000000;">(&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">3</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">in()</span><span style="color: #000000;">'</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=&gt;</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">array</span><span style="color: #000000;">(</span><span style="color: #000000;">1</span><span style="color: #000000;">,</span><span style="color: #000000;">2</span><span style="color: #000000;">,</span><span style="color: #000000;">3</span><span style="color: #000000;">)</span><span style="color: #000000;">,</span><span style="color: #000000;">&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">4</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;)&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">5</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$user</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$tableUsers</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">find(</span><span style="color: #800080;">$conditions</span><span style="color: #000000;">);&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">6</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">&nbsp;生成的where子句为&#8220;WHERE&nbsp;`id`&nbsp;IN&nbsp;(1,&nbsp;2,&nbsp;3)&#8221;&nbsp;&nbsp;<br><br>//&nbsp;假如主键名为&#8220;id&#8221;，需要查询id的值为1、2、3其中之一，则可以这样写：</span><span style="color: #008000;"><br></span><span style="color: #800080;">$condition</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">array</span><span style="color: #000000;">(<br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">in()</span><span style="color: #000000;">'</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=&gt;</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">array</span><span style="color: #000000;">(</span><span style="color: #000000;">1</span><span style="color: #000000;">,</span><span style="color: #000000;">2</span><span style="color: #000000;">,</span><span style="color: #000000;">3</span><span style="color: #000000;">)</span><span style="color: #000000;">,</span><span style="color: #000000;"><br>)<br></span><span style="color: #800080;">$user</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$tableUsers</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">find(</span><span style="color: #800080;">$conditions</span><span style="color: #000000;">);<br></span><span style="color: #008000;">//</span><span style="color: #008000;">&nbsp;生成的where子句为&#8220;WHERE&nbsp;`id`&nbsp;IN&nbsp;(1,&nbsp;2,&nbsp;3)&#8221;</span><span style="color: #008000;"><br></span><span style="color: #000000;"><br>那么如果不是主键的话怎么写了呢</span><span style="color: #000000;">?</span><span style="color: #000000;">&nbsp;也很简单，提供键值对即可。例如：<br>view&nbsp;plaincopy&nbsp;to&nbsp;clipboardprint</span><span style="color: #000000;">?</span><span style="color: #000000;"><br><br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">1</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$condition</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">array</span><span style="color: #000000;">(&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">2</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">in()</span><span style="color: #000000;">'</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=&gt;</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">array</span><span style="color: #000000;">(&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">3</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">username</span><span style="color: #000000;">'</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=&gt;</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">array</span><span style="color: #000000;">(</span><span style="color: #000000;">'</span><span style="color: #000000;">username1</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #000000;">'</span><span style="color: #000000;">username2</span><span style="color: #000000;">'</span><span style="color: #000000;">)&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">4</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;)&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">5</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;)&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">6</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$user</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$tableUsers</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">find(</span><span style="color: #800080;">$conditions</span><span style="color: #000000;">);&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">7</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">&nbsp;生成的where子句为&#8220;WHERE&nbsp;`username`&nbsp;IN&nbsp;('username1',&nbsp;'username2')&#8221;&nbsp;&nbsp;</span><span style="color: #008000;"><br></span><span style="color: #000000;"><br></span><span style="color: #800080;">$condition</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">array</span><span style="color: #000000;">(<br>&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">in()</span><span style="color: #000000;">'</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=&gt;</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">array</span><span style="color: #000000;">(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">username</span><span style="color: #000000;">'</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=&gt;</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">array</span><span style="color: #000000;">(</span><span style="color: #000000;">'</span><span style="color: #000000;">username1</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #000000;">'</span><span style="color: #000000;">username2</span><span style="color: #000000;">'</span><span style="color: #000000;">)<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;)<br>&nbsp;&nbsp;&nbsp;&nbsp;)<br></span><span style="color: #800080;">$user</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$tableUsers</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">find(</span><span style="color: #800080;">$conditions</span><span style="color: #000000;">);<br></span><span style="color: #008000;">//</span><span style="color: #008000;">&nbsp;生成的where子句为&#8220;WHERE&nbsp;`username`&nbsp;IN&nbsp;('username1',&nbsp;'username2')&#8221;</span><span style="color: #008000;"><br></span><span style="color: #000000;"><br></span><span style="color: #000000;">4</span><span style="color: #000000;">.</span><span style="color: #000000;">find()函数中其它参数的含义和用法如下：<br><br></span><span style="color: #000000;">4.1</span><span style="color: #000000;">.</span><span style="color: #800080;">$sort</span><span style="color: #000000;">&nbsp;参数指定查询时的排序方式，类型只能为字符串<br>例如&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">created&nbsp;ASC</span><span style="color: #000000;">'</span><span style="color: #000000;">&nbsp;表示按照&#8220;created&#8221;字段进行从小到大的排序。<br><br></span><span style="color: #000000;">4.2</span><span style="color: #000000;">.</span><span style="color: #800080;">$fields</span><span style="color: #000000;">&nbsp;参数指定查询结果中要包含哪些字段，类型可以为字符串或数组<br>当数据表的字段很多时，通过指定&nbsp;</span><span style="color: #800080;">$fields</span><span style="color: #000000;">&nbsp;参数可以避免查询不需要的字段，从而提高性能。<br></span><span style="color: #800080;">$fields</span><span style="color: #000000;">&nbsp;参数即可是以&#8220;</span><span style="color: #000000;">,</span><span style="color: #000000;">&#8221;逗号分隔的字段名，也可以是包含多个字段名的数组，例如：<br>view&nbsp;plaincopy&nbsp;to&nbsp;clipboardprint</span><span style="color: #000000;">?</span><span style="color: #000000;"><br><br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">1</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$fields</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">array</span><span style="color: #000000;">(</span><span style="color: #000000;">'</span><span style="color: #000000;">title</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">created</span><span style="color: #000000;">'</span><span style="color: #000000;">);&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">2</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #008000;">//</span><span style="color: #008000;">也可以写成下面的字符串形式，两种写法作用相同，区别在于自动生成的字段名两边将会添加上&#8220;`&#8221;符号，以防止出现字段名与SQL关键字冲突的情况出现。建议手写时也加上&#8220;`&#8221;字符&nbsp;&nbsp;</span><span style="color: #008000;"><br></span><span style="color: #000000;">&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">3</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$fields</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">title,&nbsp;created</span><span style="color: #000000;">'</span><span style="color: #000000;">;&nbsp;&nbsp;<br>&nbsp;&nbsp;&nbsp;</span><span style="color: #000000;">4</span><span style="color: #000000;">.</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$user</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$tableUsers</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">find(</span><span style="color: #000000;">'</span><span style="color: #000000;">id&nbsp;&lt;&nbsp;10</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #0000ff;">NULL</span><span style="color: #000000;">,</span><span style="color: #800080;">$fields</span><span style="color: #000000;">);&nbsp;&nbsp;<br><br></span><span style="color: #800080;">$fields</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">array</span><span style="color: #000000;">(</span><span style="color: #000000;">'</span><span style="color: #000000;">title</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">created</span><span style="color: #000000;">'</span><span style="color: #000000;">);<br></span><span style="color: #008000;">//</span><span style="color: #008000;">也可以写成下面的字符串形式，两种写法作用相同，区别在于自动生成的字段名两边将会添加上&#8220;`&#8221;符号，以防止出现字段名与SQL关键字冲突的情况出现。建议手写时也加上&#8220;`&#8221;字符</span><span style="color: #008000;"><br></span><span style="color: #800080;">$fields</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">'</span><span style="color: #000000;">title,&nbsp;created</span><span style="color: #000000;">'</span><span style="color: #000000;">;<br></span><span style="color: #800080;">$user</span><span style="color: #000000;">&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;</span><span style="color: #800080;">$tableUsers</span><span style="color: #000000;">-&gt;</span><span style="color: #000000;">find(</span><span style="color: #000000;">'</span><span style="color: #000000;">id&nbsp;&lt;&nbsp;10</span><span style="color: #000000;">'</span><span style="color: #000000;">,</span><span style="color: #0000ff;">NULL</span><span style="color: #000000;">,</span><span style="color: #800080;">$fields</span><span style="color: #000000;">);<br><br>推荐使用数组，这样表数据入口处理起来更快一些。</span></div>
<br><img src ="http://www.phpweblog.net/fuyongjie/aggbug/5287.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.phpweblog.net/fuyongjie/" target="_blank">bestmost</a> 2008-07-05 09:58 <a href="http://www.phpweblog.net/fuyongjie/archive/2008/07/05/5287.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>fleaphp 中$conditions 写法</title><link>http://www.phpweblog.net/fuyongjie/archive/2008/06/30/5253.html</link><dc:creator>bestmost</dc:creator><author>bestmost</author><pubDate>Mon, 30 Jun 2008 06:54:00 GMT</pubDate><guid>http://www.phpweblog.net/fuyongjie/archive/2008/06/30/5253.html</guid><wfw:comment>http://www.phpweblog.net/fuyongjie/comments/5253.html</wfw:comment><comments>http://www.phpweblog.net/fuyongjie/archive/2008/06/30/5253.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.phpweblog.net/fuyongjie/comments/commentRss/5253.html</wfw:commentRss><trackback:ping>http://www.phpweblog.net/fuyongjie/services/trackbacks/5253.html</trackback:ping><description><![CDATA[<code id="code2">$conditions = array(<br>
&nbsp; &nbsp; array('user.username', 'dualface')<br>
);<br>
<br>
$tablePosts =&amp; new Table_Posts();<br>
$posts = $tablePosts-&gt;findAll($conditions);<br>
dump($posts);</code><font color="blue"><strong>新的 $conditions 写法比较特别！一定要注意！----可写成数组形式。</strong></font><br>
<br><br><a title="FleaPHP 1.0.70 开发进度汇报专贴" href="http://www.fleaphp.cn/bbs/viewthread.php?tid=183">http://www.fleaphp.cn/bbs/viewthread.php?tid=183</a><br><img src ="http://www.phpweblog.net/fuyongjie/aggbug/5253.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.phpweblog.net/fuyongjie/" target="_blank">bestmost</a> 2008-06-30 14:54 <a href="http://www.phpweblog.net/fuyongjie/archive/2008/06/30/5253.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>[TDG] 如何定义表关联？</title><link>http://www.phpweblog.net/fuyongjie/archive/2008/06/06/4583.html</link><dc:creator>bestmost</dc:creator><author>bestmost</author><pubDate>Fri, 06 Jun 2008 08:53:00 GMT</pubDate><guid>http://www.phpweblog.net/fuyongjie/archive/2008/06/06/4583.html</guid><wfw:comment>http://www.phpweblog.net/fuyongjie/comments/4583.html</wfw:comment><comments>http://www.phpweblog.net/fuyongjie/archive/2008/06/06/4583.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.phpweblog.net/fuyongjie/comments/commentRss/4583.html</wfw:commentRss><trackback:ping>http://www.phpweblog.net/fuyongjie/services/trackbacks/4583.html</trackback:ping><description><![CDATA[<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><span style="COLOR: #000000">[TDG]&nbsp;如何定义表关联？<br>$belongsTo<br><br>定义从属关联<br><br></span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">、外键放置在主表中；&nbsp;&nbsp;<br></span><span style="COLOR: #000000">2</span><span style="COLOR: #000000">、保存时不会自动更新关联表的记录；&nbsp;&nbsp;<br></span><span style="COLOR: #000000">3</span><span style="COLOR: #000000">、删除时也不会更新关联表的记录。<br><br>示例：&nbsp;&nbsp;<br>多个文章都属于某一个栏目。<br><br>格式一：&nbsp;&nbsp;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;class&nbsp;Articles<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">var</span><span style="COLOR: #000000">&nbsp;$belongsTo&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;array(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;array(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'tableClass'&nbsp;&nbsp;</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">&nbsp;'Columns',<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'foreignKey'&nbsp;&nbsp;</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">&nbsp;'column_id',<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'mappingName'&nbsp;</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">&nbsp;'column'<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;),<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br><br><br><br>在上面的格式中，foreignKey&nbsp;表示在当前表中用什么字段存储对关联表的主键引用。&nbsp;&nbsp;<br>mappingName&nbsp;表示在主表的返回结果中，以什么名字保存关联表的数据。&nbsp;&nbsp;<br>如果不提供&nbsp;mappingName&nbsp;参数，则假定使用&nbsp;tableClass。<br><br>格式二：&nbsp;&nbsp;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;class&nbsp;Articles<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">var</span><span style="COLOR: #000000">&nbsp;$belongsTo&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;'Columns';<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br><br><br><br>格式二是一种简化写法。foreignKey&nbsp;字段名将和关联表的主键字段名相同。<br><br></span><span style="COLOR: #000000">============================</span><span style="COLOR: #000000"><br><br>$hasMany<br><br>定义一对多关联<br><br></span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">、外键保存在关联表中；&nbsp;&nbsp;<br></span><span style="COLOR: #000000">2</span><span style="COLOR: #000000">、保存时自动更新关联表的记录；&nbsp;&nbsp;<br></span><span style="COLOR: #000000">3</span><span style="COLOR: #000000">、删除主表记录时自动删除关联记录。<br><br>示例：&nbsp;&nbsp;<br>每个用户（user）有多张订单&nbsp;order。<br><br>格式一：&nbsp;&nbsp;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;class&nbsp;Users<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">var</span><span style="COLOR: #000000">&nbsp;$hasMany&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;array(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;array(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'tableClass'&nbsp;&nbsp;</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">&nbsp;'Orders',<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'foreignKey'&nbsp;&nbsp;</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">&nbsp;'user_id',<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'mappingName'&nbsp;</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">&nbsp;'orders',<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;),<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br><br><br><br>在一对多关系中，当前表并不包含对关联表的主键引用。&nbsp;&nbsp;<br>而是在关联表中保存对当前表的主键引用。<br>在上面的格式中，foreignKey&nbsp;指示在关联表中用什么字段存储对当前表的主键引用。&nbsp;&nbsp;<br>mappingName&nbsp;表示在主表的返回结果中，以什么名字保存关联表的数据。&nbsp;&nbsp;<br>如果不提供&nbsp;mappingName&nbsp;参数，则假定使用&nbsp;tableClass。<br><br>格式二：&nbsp;&nbsp;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;class&nbsp;Users<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">var</span><span style="COLOR: #000000">&nbsp;$hasMany&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;'Orders';<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br><br><br><br>简化写法中，foreignKey&nbsp;字段名将和当前表的主键字段名相同。<br><br></span><span style="COLOR: #000000">============================</span><span style="COLOR: #000000"><br><br>$hasOne<br><br>定义一对一关联<br></span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">、外键放置在关联表中；<br></span><span style="COLOR: #000000">2</span><span style="COLOR: #000000">、保存时如果有关联对象，则自动创建或更新关联表的记录；&nbsp;&nbsp;<br></span><span style="COLOR: #000000">3</span><span style="COLOR: #000000">、删除主表记录时自动删除关联记录。<br><br>示例：&nbsp;&nbsp;<br>当前表为&nbsp;users，用于存储用户账户。而每个用户账户有且只有一个对应的个人信息（profile）记录。<br><br>格式一：&nbsp;&nbsp;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;class&nbsp;Users<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">var</span><span style="COLOR: #000000">&nbsp;$hasOne&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;array(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;array(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'tableClass'&nbsp;&nbsp;</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">&nbsp;'Profiles',<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'foreignKey'&nbsp;&nbsp;</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">&nbsp;'profile_id',<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'mappingName'&nbsp;</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">&nbsp;'profile',<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;),<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br><br><br><br>在上面的格式中，foreignKey&nbsp;表示在关联表中用什么字段存储对主表的主键引用。&nbsp;&nbsp;mappingName&nbsp;表示在主表的返回结果中，以什么名字保存关联表的数据。&nbsp;&nbsp;如果不提供&nbsp;mappingName&nbsp;参数，则假定使用&nbsp;tableClass。<br><br>格式二：&nbsp;&nbsp;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;class&nbsp;Users<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">var</span><span style="COLOR: #000000">&nbsp;$hasOne&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;'Profiles';<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br><br><br><br>格式二是一种简化写法。foreignKey&nbsp;字段名将和主表的主键字段名名相同。<br><br></span><span style="COLOR: #000000">============================</span><span style="COLOR: #000000"><br><br><br>$manyToMany<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br>定义多对多关联<br><br></span><span style="COLOR: #000000">1</span><span style="COLOR: #000000">、外键保存在中间表里面；<br></span><span style="COLOR: #000000">2</span><span style="COLOR: #000000">、保存时自动更新中间表；&nbsp;&nbsp;<br></span><span style="COLOR: #000000">3</span><span style="COLOR: #000000">、删除主表记录时自动删除中间表的相关记录。<br><br>示例：&nbsp;&nbsp;<br>每个成员（member）可以拥有多个角色（role），而每个角色也可以指定给多个成员。<br><br>格式一：&nbsp;&nbsp;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;class&nbsp;Members<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">var</span><span style="COLOR: #000000">&nbsp;$manyToMany&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;array(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;array(<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'tableClass'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">&nbsp;'Roles',<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'joinTable'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">&nbsp;'member_roles',<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'foreignKey'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">&nbsp;'member_id',<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'assocforeignKey'&nbsp;</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">&nbsp;'role_id',<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;'mappingName'&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #000000">=&gt;</span><span style="COLOR: #000000">&nbsp;'roles',<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;),<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;);<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br><br><br><br>在多对多关系中，当前表并不包含对关联表的主键引用。&nbsp;&nbsp;<br>而是在一个中间表里面保存对当前表和关联表的主键引用。<br>在上面的格式中，joinTable&nbsp;表示中间表的名字。foreignKey&nbsp;和&nbsp;&nbsp;<br>assocforeignKey&nbsp;分别表示在中间表里面用什么字段存储对主表和&nbsp;&nbsp;<br>关联表主键字段的引用。<br><br>mappingName&nbsp;表示在主表的返回结果中，以什么名字保存关联表的数据。&nbsp;&nbsp;<br>如果不提供&nbsp;mappingName&nbsp;参数，则假定使用&nbsp;tableClass。<br><br>格式二：&nbsp;&nbsp;<br><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;class&nbsp;Members<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">var</span><span style="COLOR: #000000">&nbsp;$manyToMany&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;'Roles';<br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br><br><br><br>简化写法中，foreignKey&nbsp;字段名将和当前表的主键字段名相同。<br>assocforeignKey字段名称则和关联数据表的主键字段名相同。<br>而中间表名称将用FLEA_Db_TableDataGateway::getMidtableName()&nbsp;方法计算。<br><br></span></div>
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><strong style="COLOR: red">例子如下：</strong><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000">&nbsp;&nbsp;<br>&nbsp;&nbsp;</span><span style="COLOR: #0000ff">function</span><span style="COLOR: #000000">&nbsp;mSavedPostView(</span><span style="COLOR: #800080">$conditions</span><span style="COLOR: #000000">,</span><span style="COLOR: #800080">$sort</span><span style="COLOR: #000000">,</span><span style="COLOR: #800080">$limit</span><span style="COLOR: #000000">)&nbsp;{</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">读取收藏的职位</span><span style="COLOR: #008000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$member_id</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;my_getMembId();<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$conditions</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">pore_member_id&nbsp;=&nbsp;'{$member_id}'&nbsp;and&nbsp;pore_post_status&nbsp;=&nbsp;'1'</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">;</span><span style="COLOR: #008000">//</span><span style="COLOR: #008000">pore_post_status=1为收藏的职位</span><span style="COLOR: #008000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$this</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">_tbPostResume</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">enableLink(</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">post</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$link</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=&amp;</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #800080">$this</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">_tbPostResume</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">getLink(</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">post</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$link</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">fields&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">*</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$link</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #008080">sort</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">empo_sort&nbsp;desc</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$this</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">_tbPostResume</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">enableLink(</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">company</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$link2</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=&amp;</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #800080">$this</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">_tbPostResume</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">getLink(</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">company</span><span style="COLOR: #000000">'</span><span style="COLOR: #000000">);<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$link2</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">fields&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">emco_company,emco_member_id</span><span style="COLOR: #000000">"</span><span style="COLOR: #000000">;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #800080">$savedPosts</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #800080">$this</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">_tbPostResume</span><span style="COLOR: #000000">-&gt;</span><span style="COLOR: #000000">findAll(</span><span style="COLOR: #800080">$conditions</span><span style="COLOR: #000000">,</span><span style="COLOR: #800080">$sort</span><span style="COLOR: #000000">,</span><span style="COLOR: #800080">$limit</span><span style="COLOR: #000000">);<br></span><span style="COLOR: #008000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #000000"><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="COLOR: #0000ff">return</span><span style="COLOR: #000000">&nbsp;</span><span style="COLOR: #800080">$savedPosts</span><span style="COLOR: #000000">;<br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top><br><img src="http://www.phpweblog.net/Images/OutliningIndicators/None.gif" align=top>&nbsp;&nbsp;&nbsp;&nbsp;}</span></div><img src ="http://www.phpweblog.net/fuyongjie/aggbug/4583.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.phpweblog.net/fuyongjie/" target="_blank">bestmost</a> 2008-06-06 16:53 <a href="http://www.phpweblog.net/fuyongjie/archive/2008/06/06/4583.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>刚学的Flea的使用笔记.想一起学的来.绝对简单易懂.</title><link>http://www.phpweblog.net/fuyongjie/archive/2008/06/02/4246.html</link><dc:creator>bestmost</dc:creator><author>bestmost</author><pubDate>Mon, 02 Jun 2008 08:40:00 GMT</pubDate><guid>http://www.phpweblog.net/fuyongjie/archive/2008/06/02/4246.html</guid><wfw:comment>http://www.phpweblog.net/fuyongjie/comments/4246.html</wfw:comment><comments>http://www.phpweblog.net/fuyongjie/archive/2008/06/02/4246.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.phpweblog.net/fuyongjie/comments/commentRss/4246.html</wfw:commentRss><trackback:ping>http://www.phpweblog.net/fuyongjie/services/trackbacks/4246.html</trackback:ping><description><![CDATA[<h2>刚学的Flea的使用笔记.想一起学的来.绝对简单易懂.</h2>
FleaPHP 开发札记<br>
<br>
开始学习PHP 的 Framework ，选中了一个国产的FleaPHP，它也是国内唯一一个比较成熟的。开始吧！<br>
<br>
先<a href="http://www.fleaphp.org/" target="_blank">www.fleaphp.org</a>上下载了一个最新的FleaPHP 1.7版本的。<br>
先不管什么MVC了。照网上的教程一步一步来。<br>
<br>
准备用它建立个GuestBook<br>
先建立了个数据库 GuestBook 再建立两个数据表.<br><span style="background-color: yellow;">
CREATE TABLE `message` (<br>
&nbsp;&nbsp;`mid` int(10) unsigned NOT NULL auto_increment,<br>
&nbsp;&nbsp;`author` varchar(20) default 'Guest',<br>
&nbsp;&nbsp;`email` varchar(60) default NULL,<br>
&nbsp;&nbsp;`ip` varchar(15) default '0.0.0.0',<br>
&nbsp;&nbsp;`time` int(11) default '0',<br>
&nbsp;&nbsp;PRIMARY KEY&nbsp;&nbsp;(`mid`)<br>
) ENGINE=MyISAM DEFAULT CHARSET=gb2312 AUTO_INCREMENT=1;<br>
<br>
CREATE TABLE `content` (<br>
&nbsp;&nbsp;`mid` int(10) NOT NULL,<br>
&nbsp;&nbsp;`contest` text NOT NULL,<br>
&nbsp;&nbsp;KEY `mid` (`mid`)<br>
) ENGINE=MyISAM DEFAULT CHARSET=gb2312;<br>
</span><br>
建立目录结构 设定网站目录结构 根目录为 webroot/<br>
webroot/<br>
&nbsp; &nbsp; &nbsp; &nbsp; Lib/<br>
&nbsp; &nbsp; &nbsp; &nbsp; FLEA/<br>
&nbsp; &nbsp; &nbsp; &nbsp; <br>
&nbsp; &nbsp; &nbsp; &nbsp; GuestBook/<br>
&nbsp; &nbsp; &nbsp; &nbsp; Images/<br>
&nbsp; &nbsp; &nbsp; &nbsp; Scripts/<br>
&nbsp; &nbsp; &nbsp; &nbsp; Styles/<br>
&nbsp; &nbsp; &nbsp; &nbsp; APP/<br>
&nbsp; &nbsp; &nbsp; &nbsp; Config/<br>
&nbsp; &nbsp; &nbsp; &nbsp; Controller/<br>
&nbsp; &nbsp; &nbsp; &nbsp; Model/<br>
&nbsp; &nbsp; &nbsp; &nbsp; View/<br>
<br>
OK,简单的文件目录设置完毕。<br>
<br>
<br>
<br>
再简单的设置好入口文件Index.php<br>
File: Index.php<br>
&lt;?php<br>
//设置基本目录<br>
define('APP_DIR', dirname(__FILE__).'/APP');<br>
<br>
//引入FLEA.php<br>
require('../Lib/FLEA/FLEA.php');<br>
<br>
//设置配置文件<br>
FLEA::loadAppInf(APP_DIR .'/Config/DSN.php');<br>
<br>
//引入基本目录s<br>
FLEA::import(APP_DIR);<br>
<br>
//运行<br>
FLEA::runMVC();<br>
?&gt;&nbsp; &nbsp; &nbsp; &nbsp; <br>
<br>
在上面的入口Index.php中使用了配置文件。那就先编写配置文件DSN.php，该文件保存在App/Config/目录下。<br>
File: DSN.php<br>
&lt;?php<br>
return array(<br>
&nbsp; &nbsp; &nbsp; &nbsp;<font color="#ff0000"> 'responseCharset'&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =&gt; 'gb2312',&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; //设置网页编码<br>
&nbsp; &nbsp; &nbsp; &nbsp; 'databaseCharset'&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =&gt; 'gb2312',&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; //设置数据库编码</font><br>
&nbsp; &nbsp; &nbsp; &nbsp;<font color="#000000"> <span style="color: #2708ff;">//设置缓存目录,目录建立在/APP/Config/_Cache/</span><br style="color: #2708ff;"><span style="color: #2708ff;">
&nbsp; &nbsp; &nbsp; &nbsp; //这个目录设置很重要.不设置的话,可能无法运行程序.或者修改其他配置选项.</span></font><br style="color: #2708ff;"><span style="color: #2708ff;">
&nbsp; &nbsp; 'internalCacheDir'&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;=&gt; dirname(__FILE__).'/_Cache',</span><br>
&nbsp; &nbsp; &nbsp; &nbsp; //配置数据信息<br>
&nbsp; &nbsp; 'dbDSN'&nbsp; &nbsp;&nbsp;&nbsp;=&gt; array(<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;'driver'&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;=&gt; 'mysql',<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;'host'&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; =&gt; 'localhost',<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;<span style="color: #ff0000;">'login'&nbsp;</span> &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;=&gt; 'root',<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;'password'&nbsp; &nbsp;&nbsp; &nbsp;=&gt;'',<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;'database'&nbsp; &nbsp;&nbsp; &nbsp;=&gt; 'guestbook',<br>
&nbsp; &nbsp; ),<br>
);<br>
?&gt;&nbsp; &nbsp; &nbsp; &nbsp; <br>
<br>
如果要让程序运行起来.还要添加几个文件.<br>
第一个是要在APP/Controller目录下建立个Default.php文件,这个是控制器的默认动作处理文件,不能缺少.<br>
<br>
File:Default.php<br>
&lt;?php<br>
class Controller_Default extends FLEA_Controller_Action<br>
{<br>
&nbsp; &nbsp; &nbsp; &nbsp; var $message;<br>
<br>
&nbsp; &nbsp; &nbsp; &nbsp; function Controller_Default(){<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $this-&gt;message = &amp;FLEA::getSingleton('Model_Message');<br>
&nbsp; &nbsp; &nbsp; &nbsp; }<br>
<br>
&nbsp; &nbsp; &nbsp; &nbsp; function actionIndex(){<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; //echo '&lt;h1&gt;Now. Echo Default Index Page&lt;/h1&gt;';\<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; include_once(APP_DIR.'/View/index.php');<br>
&nbsp; &nbsp; &nbsp; &nbsp; }<br>
}<br>
?&gt;&nbsp; &nbsp; &nbsp; &nbsp; <br>
<br>
这上面的这个文件中.因为用了getSingleton()函数.所以涉及到数据库对象.<br>
所以还要在Model文件夹下建立几个数据库处理文件.<br>
File: /Model/Message.php<br>
&nbsp; &nbsp; &nbsp; &nbsp; &lt;?php<br>
&nbsp; &nbsp; &nbsp; &nbsp; <br>
&nbsp; &nbsp; &nbsp; &nbsp; FLEA::loadClass('FLEA_Db_TableDataGateway');<br>
&nbsp; &nbsp; &nbsp; &nbsp; <br>
&nbsp; &nbsp; &nbsp; &nbsp; class Model_Message extends FLEA_Db_TableDataGateway<br>
&nbsp; &nbsp; &nbsp; &nbsp; {<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; var $tableName = 'message';<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; var $primaryKey = 'mid';<br>
&nbsp; &nbsp; &nbsp; &nbsp; <br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <font color="#000000">var $hasMany = array(<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; array(<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 'tableClass' =&gt; 'Model_Content',<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 'foreignKey' =&gt; 'mid',<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;<span style="color: #ff0000;">'mappingName' =&gt; 'contents'</span></font><br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ),<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; );<br>
&nbsp; &nbsp; &nbsp; &nbsp; }<br>
?&gt;&nbsp; &nbsp; &nbsp; &nbsp; <br>
&nbsp; &nbsp; &nbsp; &nbsp; <br>
&nbsp; &nbsp; &nbsp; &nbsp; <br>
File: Model/Content.php<br>
&lt;?php<br>
<br>
FLEA::loadClass('FLEA_Db_TableDataGateway');<br>
<br>
class Model_Content&nbsp;&nbsp;extends FLEA_Db_TableDataGateway<br>
{<br>
&nbsp; &nbsp; &nbsp; &nbsp; var $tableName = 'content';<br>
&nbsp; &nbsp; &nbsp; &nbsp; var $primaryKey = 'mid';<br>
}<br>
?&gt;<br>
&nbsp; &nbsp; &nbsp; &nbsp; <br>
&nbsp; &nbsp; &nbsp; &nbsp; <br>
在Default.php 文件中我们还用了一/View/index.php来显示数据.所以也要建立这个文件<br>
File: /View/index.php<br>
&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt;<br>
&lt;html xmlns="http://www.w3.org/1999/xhtml"&gt;<br>
&lt;head&gt;<br>
&lt;meta http-equiv="Content-Type" content="text/html; charset=gb2312" /&gt;<br>
&lt;title&gt;Framework FLEA Application: GuestBook&lt;/title&gt;<br>
&lt;style type="text/css"&gt;<br>
&lt;!--<br>
.logo {<br>
&nbsp; &nbsp; &nbsp; &nbsp; font-size: xx-large;<br>
&nbsp; &nbsp; &nbsp; &nbsp; font-family: Verdana, Arial, Helvetica, sans-serif;<br>
&nbsp; &nbsp; &nbsp; &nbsp; font-style: normal;<br>
&nbsp; &nbsp; &nbsp; &nbsp; line-height: normal;<br>
&nbsp; &nbsp; &nbsp; &nbsp; font-weight: normal;<br>
&nbsp; &nbsp; &nbsp; &nbsp; font-variant: normal;<br>
&nbsp; &nbsp; &nbsp; &nbsp; text-transform: capitalize;<br>
&nbsp; &nbsp; &nbsp; &nbsp; color: #0000FF;<br>
}<br>
body,td,th {<br>
&nbsp; &nbsp; &nbsp; &nbsp; font-family: Verdana, Arial, Helvetica, sans-serif;<br>
&nbsp; &nbsp; &nbsp; &nbsp; font-size: small;<br>
&nbsp; &nbsp; &nbsp; &nbsp; color: #333333;<br>
}<br>
body {<br>
&nbsp; &nbsp; &nbsp; &nbsp; background-color: #FFFFFF;<br>
&nbsp; &nbsp; &nbsp; &nbsp; margin-top: 0px;<br>
}<br>
--&gt;<br>
&lt;/style&gt;<br>
&lt;/head&gt;<br>
<br>
&lt;body&gt;<br>
&lt;table width="800" border="0" align="center" cellpadding="0" cellspacing="0"&gt;<br>
&nbsp;&nbsp;&lt;tr&gt;<br>
&nbsp; &nbsp; &lt;td height="150" align="left"&gt;&lt;span class="logo"&gt;Flea Framework Application : GuestBook&lt;/span&gt; &lt;/td&gt;<br>
&nbsp;&nbsp;&lt;/tr&gt;<br>
&nbsp;&nbsp;&lt;?php foreach($posts as $lists){ ?&gt;<br>
&nbsp;&nbsp;&lt;tr&gt;<br>
&nbsp; &nbsp; &lt;td align="center"&gt;<br>
&nbsp; &nbsp; &nbsp; &nbsp; &lt;table width="80%" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#DEDEDE"&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&lt;tr bgcolor="#FFFFFF"&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&lt;td height="40" colspan="2" align="left"&gt;&nbsp;&nbsp;Contest:&lt;br
/&gt;&nbsp; &nbsp; &lt;?php echo $lists['contents'][0]['content'] ?&gt;&lt;/td&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&lt;/tr&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&lt;tr bgcolor="#FFFFFF"&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&lt;td width="59%" height="25" align="left"&gt; Publish
By:&lt;a href="mailto:&lt;?php echo $lists['email']; ?&gt;"&gt;&lt;?php
echo $lists['author']; ?&gt;&lt;/a&gt;&nbsp; &nbsp;At: &lt;?php echo date('Y-m-d
H:i',$lists['time']); ?&gt;&lt;/td&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&lt;td width="41%" align="left"&gt; From: &lt;?php echo $lists['ip']; ?&gt; &lt;/td&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&lt;/tr&gt;<br>
&nbsp; &nbsp; &lt;/table&gt;<br>
&nbsp; &nbsp; &nbsp; &nbsp; &lt;/td&gt;<br>
&nbsp;&nbsp;&lt;/tr&gt;<br>
&nbsp;&nbsp;&lt;tr&gt;<br>
&nbsp; &nbsp; &lt;td align="center" height="8"&gt;&lt;/td&gt;<br>
&nbsp;&nbsp;&lt;/tr&gt;<br>
&nbsp;&nbsp;&lt;?php } ?&gt;<br>
&nbsp;&nbsp;&lt;tr&gt;<br>
&nbsp; &nbsp; &lt;td align="center"&gt;<br>
&nbsp; &nbsp; &nbsp; &nbsp; &lt;table width="80%" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#DEDEDE"&gt;<br>
&nbsp; &nbsp; &nbsp; &nbsp; &lt;form action="&lt;?php echo $this-&gt;_url('new'); ?&gt;" method="post" name="guestbook"&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&lt;tr&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&lt;td height="25" colspan="2" align="left"&gt;&nbsp;&nbsp;New Suggestion &lt;/td&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&lt;/tr&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&lt;tr bgcolor="#FFFFFF"&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&lt;td width="22%" height="20" align="left"&gt; Author:&lt;/td&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&lt;td width="78%" align="left"&gt; &lt;input name="author"
type="text" id="author" size="30" maxlength="80" /&gt; *&lt;/td&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&lt;/tr&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&lt;tr bgcolor="#FFFFFF"&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&lt;td height="20" align="left"&gt; E-mail:&lt;/td&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&lt;td align="left"&gt; &lt;input name="email" type="text" id="email" size="50" maxlength="80" /&gt; *&lt;/td&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&lt;/tr&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&lt;tr bgcolor="#FFFFFF"&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&lt;td align="left" valign="top"&gt; Content:&lt;/td&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&lt;td align="left"&gt; &lt;textarea name="contest" cols="50" rows="10" id="contest"&gt;&lt;/textarea&gt;&lt;/td&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&lt;/tr&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&lt;tr bgcolor="#FFFFFF"&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&lt;td height="40"&gt; &lt;/td&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&lt;td align="left"&gt;&nbsp; &nbsp; &lt;input type="submit" name="Submit" value="Post Suggestion" /&gt;&lt;/td&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&lt;/tr&gt;<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;&lt;/form&gt;<br>
&nbsp; &nbsp; &lt;/table&gt;<br>
&nbsp; &nbsp; &nbsp; &nbsp; &lt;/td&gt;<br>
&nbsp;&nbsp;&lt;/tr&gt;<br>
&nbsp;&nbsp;<br>
&nbsp;&nbsp;&lt;tr&gt;<br>
&nbsp; &nbsp; &lt;td height="30" align="center"&gt; &lt;/td&gt;<br>
&nbsp;&nbsp;&lt;/tr&gt;<br>
&nbsp;&nbsp;&lt;tr&gt;<br>
&nbsp; &nbsp; &lt;td height="60" align="center"&gt;开发者：浮云 Version: 1.0 beta &lt;br /&gt;<br>
&nbsp; &nbsp; 没有版权 欢迎转载&lt;/td&gt;<br>
&nbsp;&nbsp;&lt;/tr&gt;<br>
&lt;/table&gt;<br>
&lt;/body&gt;<br>
&lt;/html&gt;<br>
&nbsp; &nbsp; &nbsp; &nbsp; <br>
&nbsp; &nbsp; &nbsp; &nbsp; <br>
<br>
<br>
有了上面的几个文件之后.就能使用FleaPHP 1.7.x了.可以先自己在数据库插入几条记录试试,不过不用着急,先了解一下Default.php和Message.php的文件结构.调试起来会比较顺利. .....<br>
&nbsp; &nbsp; &nbsp; &nbsp; <br>
&nbsp; &nbsp; &nbsp; &nbsp; 先看看Controller/Default.php文件.<br>
&nbsp; &nbsp; &nbsp; &nbsp; 开始的时候建立一个默认的控制器类.<br>
&nbsp; &nbsp; &nbsp; &nbsp; class Controller_Default extends FLEA_Controller_Action<br>
&nbsp; &nbsp; &nbsp; &nbsp; 这个类有一个属性. $message
和一个构造函数和一个默认的index函数.默认的actionIndex()函数就想网站目录下的index.php文件.打开网站某个目录时,自动的
执行index.php文件,这个当然是在Apache服务器先配置好的.FLEA默认的执行actionIndex()文件.<br>
&nbsp; &nbsp; &nbsp; &nbsp; 我们在actionIndex()文件中include了/View/index.php文件.用来显示首页.这样不至于打开网站的时候显示一片空白.心理怪难受的.<br>
&nbsp; &nbsp; &nbsp; &nbsp; Controller_Default
关键的部分不是actionIndex()函数.而是那个构造函数.我们看看用了一个FLEA::getSingleton()函数.这个函数会调用
Model目录下的定义好的数据库操作类的一个实例给属性$message. getSingleton($className)
函数的参数命名的时候要特别注意.一定要'Model_xxx'这样.不知道为什么.改成'xxx'的时候.老是提示无法找到已经定义的xxx类.尽管你
在/Model/目录下的xxx.php文件里进行了<br>
&nbsp; &nbsp; &nbsp; &nbsp; class xxx extends FLEA_Db_TableDataGateway 这样的定义.最好是定义成 class
Model_xxx extends FLEA_Db_TableDataGateway
这样就不会出错了.反正都是刚学习FLEA,有好的方法以后熟悉了后再修改. OK,在构造函数里$message
属性得到了一个数据库的实例.这样可以用它来操作数据库的数据.在actinoIndex()函数里我们使用了这样的一条语句:<br>
&nbsp; &nbsp; &nbsp; &nbsp; $posts = $this-&gt;message-&gt;findAll(null,'mid DESC');<br>
&nbsp; &nbsp; &nbsp; &nbsp; 这样就得到了表的message 和表 content的所有关联数据. 排列顺序是以字段mid为降序的排列.
关于怎么得到这样的关联数据,我们在/Model/文件夹下的文件中已经做了定义.可以再看看Message.php和Content.php文件是怎么
定义的.<br>
&nbsp; &nbsp; &nbsp; &nbsp;
在Message.php文件的中的Model_Message类中定义了3个属性.$tableName,$primaryKey和$hasMany.
这几个变量一看就知道代表什么意思了.$tableName
是你要操作的数据表的名称.$primaryKey是这个表的主键.现在我们的message表只有一个主键.多个主键的表还没有用到.具体用法还没有试
过.用的时候再研究.^o^. 这个$hasMany是比较有意思.它是个数组.用来设置关联其他表的信息的.数据模式为下面这样:<br>
&nbsp; &nbsp; &nbsp; &nbsp; var $hasMany = array(<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; array(<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 'tableClass' =&gt; 'Model_Content',&nbsp; &nbsp; &nbsp; &nbsp; //要关联的表名<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 'foreignKey' =&gt; 'mid',&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; //关联的键名,就是外键啦<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; <span style="color: #ff0000;">'mappingName' =&gt; 'contents'&nbsp; &nbsp; &nbsp; &nbsp; //结果集的提取字段名,是个数组</span><br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ),<br>
&nbsp; &nbsp; &nbsp; &nbsp; // 在这里还可以继续添加和上面一样的数据用来增加关联表的数目.<br>
&nbsp; &nbsp; &nbsp; &nbsp; );<br>
&nbsp; &nbsp; &nbsp; &nbsp; <br>
定义这个属性的时候一定要记得在Content.php文件中同时定义Model_Content类,不然就没有办法关联了.定义
Model_Content的时候就更简单了.因为它是被关联的.只要在类中定义2个基本属性就OK了.$tableName='content',$
primaryKey='mid'就这样搞定了.<br>
<br>
然后我们再往数据库里添加2条数据:<br>
INSERT INTO `message` (`mid`, `author`, `email`, `ip`, `time`) VALUES
(1, 'Guest01', 'guest01@guestcom', '192.168.1.133', 111111111);<br>
INSERT INTO `message` (`mid`, `author`, `email`, `ip`, `time`) VALUES
(2, 'Guest02', 'guest02@guestcom', '192.168.1.200', 1212121212);<br>
INSERT INTO `content` (`mid`, `content`) VALUES (1, 'test1&lt;-&gt;test1');<br>
INSERT INTO `content` (`mid`, `content`) VALUES (2, 'test2&lt;-&gt;test2');<br>
<br>
这样,GuestBook的读取功能就基本上可以使用了.截个图看看<br>
<br>
<br>
<br>
接下来我们为它添加数据保存功能,这样就更像一个留言本了.在这直前我们先好好看FLEA的数据库操作函数findAll()的具体用法.累了.明天再继续.<br>
/**<br>
*&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 用FLEA_DB 获取数据表的数据的方法<br>
*/<br>
1.一般要先建立一个FLEA_DB_TableDataGetway的对象.通常要从它这里派生个子类.<br>
&nbsp; &nbsp; &nbsp; &nbsp; FLEA::loadClass('FLEA_DB_TableDataGetway');<br>
&nbsp; &nbsp; &nbsp; &nbsp; class Model_TestGetData extends FLEA_DB_TableDataGetway {<br>
&nbsp; &nbsp; &nbsp; &nbsp; var $tableName = 'yourTablename';<br>
&nbsp; &nbsp; &nbsp; &nbsp; var $primaryKey = 'yourTablePrimaryKey';<br>
&nbsp; &nbsp; &nbsp; &nbsp; }<br>
&nbsp; &nbsp; &nbsp; &nbsp;
如果只是简单的单表数据读取的话,这样就可以了.一般在Controller里的控制文件里通过FLEA::getSingleton()
函数来取得对象名称.也可以直接获取.通过Controller里的文件来获取可能主要是体现MVC模式吧.在PHP4的环境下一般通过前加个
'&amp;',可以反正复制对象.像这样:<br>
&nbsp; &nbsp; &nbsp; &nbsp; $this-&gt;dbAction = &amp;FLEA::getSingleton('Model_className');<br>
&nbsp; &nbsp; &nbsp; &nbsp;
上面的dbAction是Controller里的类的一个属性.getSingleton()函数的参数'Model_className'一定要注
意,'Model_'好象是表示在Model目录下的意思.如果不加这个,FLEA总是提示找不到已经被你定义好的类.<br>
&nbsp; &nbsp; &nbsp; &nbsp; FLEA获取的findAll(); 所有的结果可以用dump($rs) 来查看结果.<br>
&nbsp; &nbsp; &nbsp; &nbsp; <br>
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #ff0000;">参数方式1: findAll(null);</span><br style="color: #ff0000;"><span style="color: #ff0000;">
&nbsp; &nbsp; &nbsp; &nbsp; $rs = $object-&gt;findAll(null);</span><br style="color: #ff0000;"><span style="color: #ff0000;">
&nbsp; &nbsp; &nbsp; &nbsp; 显示所有数据,没有排列顺序. </span><br style="color: #ff0000;"><span style="color: #ff0000;">
&nbsp; &nbsp; &nbsp; &nbsp; </span><br style="color: #ff0000;"><span style="color: #ff0000;">
&nbsp; &nbsp; &nbsp; &nbsp; 参数方式2: findAll(null,'fields DESC/ASC');</span><br style="color: #ff0000;"><span style="color: #ff0000;">
&nbsp; &nbsp; &nbsp; &nbsp; $rs = $object-&gt;findAll(null,'fields DESC/ASC');</span><br style="color: #ff0000;"><span style="color: #ff0000;">
&nbsp; &nbsp; &nbsp; &nbsp; 显示所有数据,按照fields 的DESC或者ASC对结果集进行排序返回.</span><br style="color: #ff0000;"><span style="color: #ff0000;">
&nbsp; &nbsp; &nbsp; &nbsp; </span><br style="color: #ff0000;"><span style="color: #ff0000;">
&nbsp; &nbsp; &nbsp; &nbsp; 参数方式3: findAll(null,'fields DESC/ASC',number);</span><br style="color: #ff0000;"><span style="color: #ff0000;">
&nbsp; &nbsp; &nbsp; &nbsp; $rs = $object-&gt;findAll(null,'fields DESC/ASC',number);</span><br style="color: #ff0000;"><span style="color: #ff0000;">
&nbsp; &nbsp; &nbsp; &nbsp; 按照排序结果,截取前number条记录.</span><br style="color: #ff0000;"><span style="color: #ff0000;">
&nbsp; &nbsp; &nbsp; &nbsp; </span><br style="color: #ff0000;"><span style="color: #ff0000;">
&nbsp; &nbsp; &nbsp; &nbsp; 参数方式4: findAll(null,'fields DESC/ASC',number,fieldsArray);</span><br style="color: #ff0000;"><span style="color: #ff0000;">
&nbsp; &nbsp; &nbsp; &nbsp; $fields = array('fields1','fields2',...);</span><br style="color: #ff0000;"><span style="color: #ff0000;">
&nbsp; &nbsp; &nbsp; &nbsp; $rs = $object-&gt;findAll(null,'fields DESC/ASC',number,$fields);</span><br style="color: #ff0000;"><span style="color: #ff0000;">
&nbsp; &nbsp; &nbsp; &nbsp; 按照排序结果 只显示$fields数组里的字段,截取前number条记录.</span><br style="color: #ff0000;"><span style="color: #ff0000;">
&nbsp; &nbsp; &nbsp; &nbsp; </span><br style="color: #ff0000;"><span style="color: #ff0000;">
&nbsp; &nbsp; &nbsp; &nbsp; 参数方式4: findAll(null,'fields DESC/ASC',numArr);</span><br style="color: #ff0000;"><span style="color: #ff0000;">
&nbsp; &nbsp; &nbsp; &nbsp; $nums = array(99,10);</span><br style="color: #ff0000;"><span style="color: #ff0000;">
&nbsp; &nbsp; &nbsp; &nbsp; $rs = $object-&gt;findAll(null,'fields DESC/ASC',$nums);</span><br style="color: #ff0000;"><span style="color: #ff0000;">
&nbsp; &nbsp; &nbsp; &nbsp; 按照排序结果 截取从第100条到109条的10条记录.</span><br style="color: #ff0000;"><span style="color: #ff0000;">
&nbsp; &nbsp; &nbsp; &nbsp; </span><br style="color: #ff0000;"><span style="color: #ff0000;">
&nbsp; &nbsp; &nbsp; &nbsp; 参数方式5:findAll(condition);</span><br>
&nbsp; &nbsp; &nbsp; &nbsp; 先前查询的时候都没有加条件,如果有查询条件的时候可以把上面的null部分换成查询条件.这样就可以方便的查询想要的数据了.如果条件比较多的话可以使用数组来处理.简单那的一点就像 $condition = 'mid&gt;1';这样.<br>
&nbsp; &nbsp; &nbsp; &nbsp; <br>
&nbsp; &nbsp; &nbsp; &nbsp;<span style="color: #2708ff;"> 需要注意一点是如果关联表里有多条的记录能与主表的一条记录关联,那么主表即使只限制取一条记录,mappingName的字段会把关联表里的符合要求的记录都取出来存放在改数组里.</span><br>
&nbsp; &nbsp; &nbsp; &nbsp; <br>
&nbsp; &nbsp; &nbsp; &nbsp; 现在我们添加GuestBook的数据保存功能.<br>
&nbsp; &nbsp; &nbsp; &nbsp; 保存数据到数据库,Flea主要用到的一个函数为: create()这样.<br>
在Default.php文件的加入一个小小的函数就可以办到.像下面这样:<br>
function actionNew(){<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $_POST['content'] = nl2br(htmlspecialchars($_POST['content']));<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $newArr = array(<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 'author' =&gt; htmlspecialchars($_POST['author']),<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 'email' =&gt; htmlspecialchars($_POST['email']),<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 'ip' =&gt; $_SERVER["REMOTE_ADDR"],<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 'time'=&gt; time(),<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 'contents' =&gt; array(<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; array(<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 'content'=&gt;$_POST['content']<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ) <br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; )<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; );<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if(!empty($newArr['author'])&amp;&amp;!empty($newArr['email'])&amp;&amp;!empty($_POST['content'])){<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $this-&gt;message-&gt;create($newArr);<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; echo 'Thanks,Suggestion save success! Please &lt;a
href="'.$this-&gt;_url().'"&gt;Click Here &lt;/a&gt; to back!'; <br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;//redirect($this-&gt;_url());<br>
&nbsp; &nbsp; &nbsp; &nbsp; }&nbsp; &nbsp; &nbsp; &nbsp; <br>
<br>
&nbsp; &nbsp; &nbsp; &nbsp; 可以看到.开始的部分.我们对表单的值进行了一些格式化.方便保存到数据库中.<br>
如果按照现在的办法，执行页面操作。结果不会正确，出错的原因在于数据库的设计。可以查看access.log文件可以看到。Flea在执行数据库插入操
作的时候。本来该在Content表执行插入操作。结果却变成了更新操作。在咨询了Flea的开发者老廖后。他提供了如下的解决方法：<br>
回复邮件内容：<br>
问题知道了。<br>
<br><span style="color: #2708ff;">
默认情况下，FleaPHP 调用 save() 操作来保存关联数据。</span><br style="color: #2708ff;">
<br style="color: #2708ff;"><span style="color: #2708ff;">
而 save() 操作判断数据是否包含主键值。如果包含主键值，则调用 update() 方法，否则调用 create() 方法。</span><br style="color: #2708ff;">
<br style="color: #2708ff;"><span style="color: #2708ff;">
由于你的 content 表使用 mid 字段作为主键，同时该字段还用于关联。因此在调用 create() 创建 message 记录时，FleaPHP 会自动将新创建的 message 记录的主键值填充到要保存的 content 记录中。 </span><br style="color: #2708ff;">
<br style="color: #2708ff;"><span style="color: #2708ff;">
所以在接下来保存 content 记录时，就变成调用 update() 方法了。</span><br style="color: #2708ff;">
<br style="color: #2708ff;"><span style="color: #2708ff;">
解决办法很简单，在调用 $this-&gt;message-&gt;create() 之前执行：</span><br style="color: #2708ff;">
<br style="color: #2708ff;"><span style="color: #2708ff;">
$link =&amp; $this-&gt;message-&gt;getLink('content');</span><br style="color: #2708ff;"><span style="color: #2708ff;">
$link-&gt;saveAssocMethod = 'create'; </span><br style="color: #2708ff;">
<br style="color: #2708ff;"><span style="color: #2708ff;">
执行 create() 后，再修改</span><br style="color: #2708ff;">
<br style="color: #2708ff;"><span style="color: #2708ff;">
$link-&gt;saveAssocMethod = 'save';</span><br style="color: #2708ff;">
<br style="color: #2708ff;"><span style="color: #2708ff;">
上述代码使得在调用 create() 保存关联数据时总是使用 create() 方法。 &nbsp; &nbsp; &nbsp; &nbsp; </span><br style="color: #2708ff;">
<br>
按照上面的方法可以解决数据插入的问题。<span style="color: #ff0000;">问题在于我们把content表的外键mid同时定义成了主键了。解决的办法除了按照上面的办法外。修改数据库也能解决关联插入数据的问题。</span><br>
看看重新修改的文件<br>
先修改数据表content<br>
CREATE TABLE `content` (<br>
&nbsp;&nbsp;`id` int(10) NOT NULL auto_increment,<br>
&nbsp;&nbsp;`mid` int(10) NOT NULL,<br>
&nbsp;&nbsp;`content` text NOT NULL,<br>
&nbsp;&nbsp;KEY `mid` (`id`)<br>
) ENGINE=MyISAM&nbsp;&nbsp;DEFAULT CHARSET=gb2312 AUTO_INCREMENT=1 ;&nbsp; &nbsp; &nbsp; &nbsp; <br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
/Model/Content.php<br>
&lt;?php<br>
FLEA::loadClass('FLEA_Db_TableDataGateway');<br>
<br>
class Model_Content&nbsp;&nbsp;extends FLEA_Db_TableDataGateway<br>
{<br>
&nbsp; &nbsp; &nbsp; &nbsp; var $tableName = 'content';<br>
&nbsp; &nbsp; &nbsp; &nbsp; var $primaryKey = 'id';<br>
}&nbsp; &nbsp; &nbsp; &nbsp; <br>
<br>
这样问题就解决了。<br>
<br>
现在的GuestBook虽然可以完成基本的留言和显示功能。但是还是很不好用。<br>
第一是缺少分页功能。<br>
第二是php和html混在一起。<br>
不适合美工。<br>
先来解决模板问题。<br>
Flea1.7已经默认支持对很多模板的支持。我比较顺手的是SmartTemplate,就简称ST吧。使用ST,需要先配置ST参数信息。<br>
看看修改过的DNS.php文件:<br>
&lt;?php<br>
return array(<br>
&nbsp; &nbsp; &nbsp; &nbsp; 'logEnabled'&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =&gt; true,<br>
&nbsp; &nbsp; &nbsp; &nbsp; 'responseCharset'&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =&gt; 'gb2312',<br>
&nbsp; &nbsp; &nbsp; &nbsp; 'autoResponseHeader'&nbsp; &nbsp; &nbsp; &nbsp; =&gt; true,<br>
&nbsp; &nbsp; &nbsp; &nbsp; 'databaseCharset'&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =&gt; 'gb2312',<br>
&nbsp; &nbsp; &nbsp; &nbsp; 'defaultLanguage'&nbsp; &nbsp;&nbsp; &nbsp; =&gt; 'chinese-gb2312',<br>
&nbsp; &nbsp; 'internalCacheDir'&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;=&gt; dirname(__FILE__).'/_Cache',<br>
&nbsp; &nbsp; 'dbDSN'&nbsp; &nbsp;&nbsp;&nbsp;=&gt; array(<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;'driver'&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;=&gt; 'mysql',<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;'host'&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp; =&gt; 'localhost',<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;'login'&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;=&gt; 'root',<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;'password'&nbsp; &nbsp;&nbsp; &nbsp;=&gt;'',<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;'database'&nbsp; &nbsp;&nbsp; &nbsp;=&gt; 'guestbook',<br>
&nbsp; &nbsp; ),<br>
<br>
&nbsp; &nbsp; &nbsp; &nbsp; 'view' =&gt; 'FLEA_View_SmartTemplate',<br>
&nbsp; &nbsp; &nbsp; &nbsp; 'viewConfig'&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =&gt; array(<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;'smartDir'&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =&gt; dirname(dirname(dirname(__FILE__))) .'/Lib/SmartTemplate',<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;'template_dir'&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =&gt; dirname(dirname(__FILE__)). '/View/Tpl',<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;'temp_dir'&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =&gt; dirname(dirname(__FILE__)). '/View/Tpl_c',<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 'cache_dir'&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; =&gt; dirname(dirname(__FILE__)).'/View/Tpl_c',<br>
&nbsp; &nbsp; ),<br>
);<br>
?&gt;&nbsp; &nbsp; &nbsp; &nbsp; <br>
<br>
使用时先做几个模板文件。由index.php文件截出来的。<br>
/View/Tpl/page.htm<br>
&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt;<br>
&lt;html xmlns="http://www.w3.org/1999/xhtml"&gt;<br>
&lt;head&gt;<br>
&lt;meta http-equiv="Content-Type" content="text/html; charset=gb2312" /&gt;<br>
&lt;title&gt;Framework FLEA Application: GuestBook&lt;/title&gt;<br>
&lt;style type="text/css"&gt;<br>
&lt;!--<br>
.logo {<br>
&nbsp; &nbsp; &nbsp; &nbsp; font-size: xx-large;<br>
&nbsp; &nbsp; &nbsp; &nbsp; font-family: Verdana, Arial, Helvetica, sans-serif;<br>
&nbsp; &nbsp; &nbsp; &nbsp; font-style: normal;<br>
&nbsp; &nbsp; &nbsp; &nbsp; line-height: normal;<br>
&nbsp; &nbsp; &nbsp; &nbsp; font-weight: normal;<br>
&nbsp; &nbsp; &nbsp; &nbsp; font-variant: normal;<br>
&nbsp; &nbsp; &nbsp; &nbsp; text-transform: capitalize;<br>
&nbsp; &nbsp; &nbsp; &nbsp; color: #0000FF;<br>
}<br>
body,td,th {<br>
&nbsp; &nbsp; &nbsp; &nbsp; font-family: Verdana, Arial, Helvetica, sans-serif;<br>
&nbsp; &nbsp; &nbsp; &nbsp; font-size: small;<br>
&nbsp; &nbsp; &nbsp; &nbsp; color: #333333;<br>
}<br>
body {<br>
&nbsp; &nbsp; &nbsp; &nbsp; background-color: #FFFFFF;<br>
&nbsp; &nbsp; &nbsp; &nbsp; margin-top: 0px;<br>
}<br>
--&gt;<br>
&lt;/style&gt;<br>
&lt;/head&gt;<br>
<br>
&lt;body&gt;<br>
&lt;table width="800" border="0" align="center" cellpadding="0" cellspacing="0"&gt;<br>
&nbsp;&nbsp;&lt;tr&gt;<br>
&nbsp; &nbsp; &lt;td height="120" align="left"&gt;&lt;span class="logo"&gt;Flea Framework Application : GuestBook&lt;/span&gt; &lt;/td&gt;<br>
&nbsp;&nbsp;&lt;/tr&gt;<br>
&nbsp;&nbsp;&lt;tr&gt;<br>
&nbsp; &nbsp; &lt;td height="25" align="left"&gt;&nbsp; &nbsp;&nbsp; &nbsp;&lt;a href=""&gt;My GuestBook&lt;/a&gt;&lt;/td&gt;<br>
&nbsp;&nbsp;&lt;/tr&gt;<br>
&nbsp;&nbsp;{out}<br>
&nbsp;&nbsp;&lt;tr&gt;<br>
&nbsp; &nbsp; &lt;td align="center"&gt;<br>
&nbsp; &nbsp; &nbsp; &nbsp; &lt;table width="80%" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#DEDEDE"&gt;<br>
&nbsp; &nbsp; &nbsp; &nbsp; &lt;form action="{post_url}" method="post" name="guestbook"&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&lt;tr&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&lt;td height="25" colspan="2" align="left"&gt;&nbsp;&nbsp;New Suggestion &lt;/td&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&lt;/tr&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&lt;tr bgcolor="#FFFFFF"&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&lt;td width="22%" height="20" align="left"&gt; Author:&lt;/td&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&lt;td width="78%" align="left"&gt; &lt;input name="author"
type="text" id="author" size="30" maxlength="80" value="Camgame" /&gt;
*&lt;/td&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&lt;/tr&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&lt;tr bgcolor="#FFFFFF"&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&lt;td height="20" align="left"&gt; E-mail:&lt;/td&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&lt;td align="left"&gt; &lt;input name="email" type="text"
id="email" size="50" maxlength="80" value="cam_work@163.com" /&gt;
*&lt;/td&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&lt;/tr&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&lt;tr bgcolor="#FFFFFF"&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&lt;td align="left" valign="top"&gt; Content:&lt;/td&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&lt;td align="left"&gt; &lt;textarea name="content" cols="50"
rows="10"
id="content"&gt;asdjflkjafalsdfjlaksd&lt;/textarea&gt;&lt;/td&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&lt;/tr&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&lt;tr bgcolor="#FFFFFF"&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&lt;td height="40"&gt; &lt;/td&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&lt;td align="left"&gt;&nbsp; &nbsp; &lt;input type="submit" name="Submit" value="Post Suggestion" /&gt;&lt;/td&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&lt;/tr&gt;<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp;&lt;/form&gt;<br>
&nbsp; &nbsp; &lt;/table&gt;<br>
&nbsp; &nbsp; &nbsp; &nbsp; &lt;/td&gt;<br>
&nbsp;&nbsp;&lt;/tr&gt;<br>
&nbsp;&nbsp;<br>
&nbsp;&nbsp;&lt;tr&gt;<br>
&nbsp; &nbsp; &lt;td height="30" align="center"&gt; &lt;/td&gt;<br>
&nbsp;&nbsp;&lt;/tr&gt;<br>
&nbsp;&nbsp;&lt;tr&gt;<br>
&nbsp; &nbsp; &lt;td height="60" align="center"&gt;开发者：浮云 Version: 1.0 beta &lt;br /&gt;<br>
&nbsp; &nbsp; 没有版权 欢迎转载&lt;/td&gt;<br>
&nbsp;&nbsp;&lt;/tr&gt;<br>
&lt;/table&gt;<br>
&lt;/body&gt;<br>
&lt;/html&gt;&nbsp; &nbsp; &nbsp; &nbsp; <br>
<br>
/View/box.htm<br>
&lt;!-- BEGIN row --&gt;<br>
&nbsp;&nbsp;&lt;tr&gt;<br>
&nbsp; &nbsp; &lt;td align="center"&gt;<br>
&nbsp; &nbsp; &nbsp; &nbsp; &lt;table width="80%" border="0" align="center" cellpadding="0" cellspacing="1" bgcolor="#DEDEDE"&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&lt;tr bgcolor="#FFFFFF"&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&lt;td height="40" colspan="2" align="left"&gt;&nbsp;&nbsp;Contest:&lt;br /&gt;&nbsp; &nbsp; {text}&lt;/td&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&lt;/tr&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&lt;tr bgcolor="#FFFFFF"&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&lt;td width="59%" height="25" align="left"&gt; Publish
By:&lt;a href="mailto:{email}"&gt;{author}&lt;/a&gt;&nbsp; &nbsp;At:
{time}&lt;/td&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&lt;td width="41%" align="left"&gt; From: {ip} &lt;/td&gt;<br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&lt;/tr&gt;<br>
&nbsp; &nbsp; &lt;/table&gt;<br>
&nbsp; &nbsp; &nbsp; &nbsp; &lt;/td&gt;<br>
&nbsp;&nbsp;&lt;/tr&gt;<br>
&nbsp;&nbsp;&lt;tr&gt;<br>
&nbsp; &nbsp; &lt;td align="center" height="8"&gt;&lt;/td&gt;<br>
&nbsp;&nbsp;&lt;/tr&gt;<br>
&lt;!-- END row --&gt;&nbsp; &nbsp; &nbsp; &nbsp; <br>
<br>
模板文件准备好了。<br>
修改/Controller/Default.php<br>
&lt;?php<br>
class Controller_Default extends FLEA_Controller_Action<br>
{<br>
&nbsp; &nbsp; &nbsp; &nbsp; var $message;<br>
&nbsp; &nbsp; &nbsp; &nbsp; var $tpl;<br>
<br>
&nbsp; &nbsp; &nbsp; &nbsp; function Controller_Default(){<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $this-&gt;message = &amp;FLEA::getSingleton('Model_Message');<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $this-&gt;tpl =&amp; $this-&gt;_getView();<br>
&nbsp; &nbsp; &nbsp; &nbsp; }<br>
<br>
&nbsp; &nbsp; &nbsp; &nbsp; function actionIndex(){<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $posts = $this-&gt;message-&gt;findAll(null,'mid DESC');<br>
<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $out = '';<br>
<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $this-&gt;tpl-&gt;set_file('page.htm');<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $t = new FLEA_View_SmartTemplate();<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $t-&gt;set_file('box.htm');<br>
<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; foreach($posts as $k=&gt;$v){<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $posts[$k]['time'] = date('Y-m-d H:i:s',$v['time']);<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $posts[$k]['text'] = $v['contents'][0]['content'];<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; unset($posts[$k]['contents']);<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }<br>
<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $this-&gt;tpl-&gt;assign('post_url',$this-&gt;_url('new'));<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $t-&gt;assign('row',$posts);<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $out = $t-&gt;result();<br>
<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $this-&gt;tpl-&gt;assign('out',$out);<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $this-&gt;tpl-&gt;output();&nbsp; &nbsp; &nbsp; &nbsp; <br>
&nbsp; &nbsp; &nbsp; &nbsp; }<br>
<br>
&nbsp; &nbsp; &nbsp; &nbsp; function actionNew(){<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $_POST['content'] = nl2br(htmlspecialchars($_POST['content']));<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $newArr = array(<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 'author' =&gt; htmlspecialchars($_POST['author']),<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 'email' =&gt; htmlspecialchars($_POST['email']),<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 'ip' =&gt; $_SERVER["REMOTE_ADDR"],<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 'time'=&gt; time(),<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 'contents' =&gt; array(<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; array(<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 'content'=&gt;$_POST['content']<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ) <br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; )<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; );<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if(!empty($newArr['author'])&amp;&amp;!empty($newArr['email'])&amp;&amp;!empty($_POST['content'])){<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; $this-&gt;message-&gt;create($newArr);&nbsp; &nbsp; &nbsp; &nbsp; <br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }<br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br>
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; echo 'Thanks,Suggestion save success! Please &lt;a
href="'.$this-&gt;_url().'"&gt;Click Here &lt;/a&gt; to back!'; <br>
&nbsp; &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;//redirect($this-&gt;_url());<br>
&nbsp; &nbsp; &nbsp; &nbsp; }<br>
}&nbsp; &nbsp; &nbsp; &nbsp; <br>
因为ST对嵌套支持不是很好。必须要支持使用多个模板对象来处理.但是Flea::_getView() 总是返回同一个对象。所以要使用<br>
$t = new FLEA_View_SmartTemplate();<br>
来创建新的对象。记得把class.smarttemplate.php文件的299行的<br>
unset ($_top);该成 unset($GLOBALS['_top']); 否则模板嵌套就不会成功。<br>
<br>
好了。简单的Flea集成其他的模板类就OK了。<br>
接下来就给GuestBook添加分页功能就可以叫成一个GuestBook了<br>
<br>
先不写了。累的很。<br>
感谢偶的MM放弃聊天时间,让出电脑让偶有机会玩玩FleaPHP,<br>
也谢谢老廖!<br>
以后的休息一段时间再写.<br>
<br><img src ="http://www.phpweblog.net/fuyongjie/aggbug/4246.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.phpweblog.net/fuyongjie/" target="_blank">bestmost</a> 2008-06-02 16:40 <a href="http://www.phpweblog.net/fuyongjie/archive/2008/06/02/4246.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>