FleaPHP CRUD 视频配套习题 - 提供最佳答案的获得勋章一枚
FleaPHP CRUD 视频配套习题,得到最佳答案者,赠送一枚勋章([url=http://phpchina.com/bbs/thread-22847-1-1.html]点击查看勋章的作用[/url])。学习FLeaPHP CRUD视频:[url=http://www.phpchina.com/bbs/forum-147-1.html]http://www.phpchina.com/bbs/forum-147-1.html[/url]
下载FleaPHP:[url=http://www.phpchina.com/25986/viewspace_6301.html]http://www.phpchina.com/25986/viewspace_6301.html[/url]
习题1:
按照title字段正向排序,读取posts数据表的最前面5条记录。
习题2:
按照created字段反向排序,读取posts数据表从第21条开始的3条记录,并且只读取title字段
习题3:
读取所有指定了php标签的posts表的记录,并且只读取title字段
习题4:
以随机内容,在posts表连续创建10条记录
习题5:
在创建post记录的同时指定php和crud标签
[color=Red]注意 [/color]最好用FleaPHP来编写。例如第一题:
$rowset = $tablePosts->findAll(null, ‘title ASC’, 5); 1 select * from `posts` order by `title` limit 5
2 select `title` from `posts` order by `created` desc limit 20,3
后面的不明白标签与环境~~ 另外.不要在弹出提示了.很烦 不错,但怎么感觉到变成FleaPHP专题了 [quote]原帖由 [i]dzjzmj[/i] 于 2007-4-7 11:18 发表 [url=http://phpchina.com/bbs/redirect.php?goto=findpost&pid=169914&ptid=22688][img]http://phpchina.com/bbs/images/common/back.gif[/img][/url]
不错,但怎么感觉到变成FleaPHP专题了 [/quote]
嗯,我们这期讨论的是有关PHP书籍。因为每期都讨论概念上的东西,所以我们慢慢加上代码练习。
PHPChina将重点推广ZF和FleaPHP,因此才会放FleaPHP的题。 [quote]原帖由 [i]漠北怪叟[/i] 于 2007-4-7 10:03 发表 [url=http://phpchina.com/bbs/redirect.php?goto=findpost&pid=169882&ptid=22688][img]http://phpchina.com/bbs/images/common/back.gif[/img][/url]
1 select * from `posts` order by `title` limit 5
2 select `title` from `posts` order by `created` desc limit 20,3
后面的不明白标签与环境~~ 另外.不要在弹出提示了.很烦 [/quote]
最好用FleaPHP来编写。例如第一题:
[font=Calibri][size=10.5pt]$rowset = $tablePosts->findAll(null, ‘title ASC’, 5);[/size][/font] [quote]原帖由 [i]muqiao[/i] 于 2007-4-7 11:40 发表 [url=http://www.phpchina.com/bbs/redirect.php?goto=findpost&pid=169928&ptid=22688][img]http://www.phpchina.com/bbs/images/common/back.gif[/img][/url]
没兴趣
愿研究其代码 不愿用其代码 [/quote]
既然愿意研究代码,为何又没有兴趣用呢?
如果你能告诉我们, fleaphp 有哪些不足,就可以帮助我们更好的改进 fleaphp。这也是对我们开源项目的一种有力支持 :) :lol :lol 没有测试. 支持 FLEAPHP 支持老廖哈.
习题1:
按照title字段正向排序,读取posts数据表的最前面5条记录。[code] $sort = 'title ASC';
$rowset = $tablePosts->findAll(null, $sort, 5);
[/code]习题2:
按照created字段反向排序,读取posts数据表从第21条开始的3条记录,并且只读取title字段[code] $sort = 'created DESC';
$limit = array(20, 3);
$fields = 'title';
$rowset = $tablePosts->findAll(null, $sort, $limit, $fields);
[/code]习题3:
读取所有指定了php标签的posts表的记录,并且只读取title字段[code] $conditions = array(array('tags.lable', 'php'));
$fields = 'title';
$rowset = $tablePosts->findAll($conditoins, null, null, $fields);
[/code]习题4:
以随机内容,在posts表连续创建10条记录[code] for ($i = 0; $i < 11; $i++){
$row = array(
'title' => '标题' . $i,
'body' => '内容' . $i,
);
$postid = $tablePosts->create($row);
}
[/code]习题5:
在创建post记录的同时指定php和crud标签[code] $row = array(
'title' => '测试一',
'body' => '测试内容',
'tags' => array(
array(
'label' => 'php',
),
array(
'label' => 'crud',
),
)
);
$postid = $tablePosts->create($row);
[/code]
[[i] 本帖最后由 szy_session1987 于 2007-4-8 10:48 编辑 [/i]] 支持 支持下,不过我觉得还是形成统一的好,我比较喜欢ZF 支持
不是很懂了,顶一下!
支持你了! :lol 支持国产回复管理员出的题,所有代码经过测试!
PHP 代码:[php]<?php
require_once('FLEA.php');
FLEA::setAppInf('internalCacheDir',dirname(__FILE__).'/_Cache');
$dsn = array('driver' => 'mysql',
'host' => 'localhost',
'login' => 'root',
'password' => 'ybnews',
'database' => 'fleaphp',);
FLEA::setAppInf('dbDSN',$dsn);
FLEA::loadClass('FLEA_Db_TableDataGateway');
class Table_Posts extends FLEA_Db_TableDataGateway {
var $tableName = 'posts';
var $primaryKey = 'post_id';
var $manyToMany = array(
array('tableClass' => 'Table_Tags',
'foreignKey' => 'post_id',
'assocForeignKey' => 'tag_id',
'joinTable' => 'posts_tags',
'mappingName' => 'tags',
),
);
}
class Table_Tags extends FLEA_Db_TableDataGateway {
var $tableName = 'tags';
var $primaryKey = 'tag_id';
}
$tablePosts = & get_singleton('Table_Posts');
$tableTags = & get_singleton('Table_Tags');
// 第1题答案
/*$rowset = $tablePosts->findAll(null,'title ASC',5);
dump($rowset);*/
// 第2题答案
/*$rowset = $tablePosts->findAll(null,'created DESC',array(3,20),array('title'));
dump($rowset);*/
// 第3题答案
/*$conditions = array(array('tags.lable','php'));
$rowset = $tablePosts->findAll($conditions,null,null,'title');
dump($rowset);*/
// 第4题答案
/*$i = 1;
while ($i <= 10){
$row = array('title' => '第'.$i.'条日志标题',
'content' => '第'.$i.'条日志内容',);
$postid[] = $tablePosts->create($row);
$i++;
}*/
// 第5题答案
/*$row = array('title' => '测试标签记录',
'content' => '测试标签记录的内容',
'tags' => array(array('lable' => 'php'),
array('lable' => 'curd'),),);
$postid = $tablePosts->create($row);
$rowset = $tablePosts->find($postid);
dump($rowset);*/[/php]
MySQL 代码(PHPMYADMIN导出):
[code]-- phpMyAdmin SQL Dump
-- version 2.8.2
-- [url]http://www.phpmyadmin.net[/url]
--
-- 主机: localhost
-- 生成日期: 2007 年 04 月 10 日 00:43
-- 服务器版本: 5.0.37
-- PHP 版本: 5.2.1
--
-- 数据库: `fleaphp`
--
-- --------------------------------------------------------
--
-- 表的结构 `posts`
--
DROP TABLE IF EXISTS `posts`;
CREATE TABLE IF NOT EXISTS `posts` (
`post_id` int(10) unsigned NOT NULL auto_increment,
`title` varchar(255) NOT NULL,
`content` text NOT NULL,
`created` int(10) NOT NULL,
PRIMARY KEY (`post_id`)
) ENGINE=MyISAM AUTO_INCREMENT=36 DEFAULT CHARSET=utf8 AUTO_INCREMENT=36 ;
-- --------------------------------------------------------
--
-- 表的结构 `posts_tags`
--
DROP TABLE IF EXISTS `posts_tags`;
CREATE TABLE IF NOT EXISTS `posts_tags` (
`post_id` int(10) unsigned NOT NULL,
`tag_id` int(10) unsigned NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
-- --------------------------------------------------------
--
-- 表的结构 `tags`
--
DROP TABLE IF EXISTS `tags`;
CREATE TABLE IF NOT EXISTS `tags` (
`tag_id` int(10) unsigned NOT NULL auto_increment,
`lable` varchar(255) NOT NULL,
PRIMARY KEY (`tag_id`)
) ENGINE=MyISAM AUTO_INCREMENT=8 DEFAULT CHARSET=utf8 AUTO_INCREMENT=8 ;
[/code] 应该支持~!.. 观望中 或许fleaphp真的不错, niohe (网缘伟伟) ,很有可能获奖。:D 呵呵 多谢管理员哈!:P 恭喜 恭喜
