攻克CakePHP系列二 表单数据显示


Posted in PHP onOctober 22, 2008

首先建立数据库cake_ext,并执行如下sql文:

  1. CREATE TABLE `companies` (
  2.   `id` int(11) NOT NULL auto_increment,
  3.   `company` varchar(50) NOT NULL,
  4.   `price` decimal(8,2) NOT NULL,
  5.   `change` decimal(8,2) NOT NULL,
  6.   `lastudp` date NOT NULL,
  7.   PRIMARY KEY  (`id`)
  8. ENGINE=MyISAM AUTO_INCREMENT=8 DEFAULT CHARSET=utf8;
  9. -- ----------------------------
  10. -- Records 
  11. -- ----------------------------
  12. INSERT INTO `companies` VALUES ('1', '3m Co', '71.72', '0.02', '2008-10-21');
  13. INSERT INTO `companies` VALUES ('2', 'Alcoa Inc', '29.01', '0.42', '2008-10-20');
  14. INSERT INTO `companies` VALUES ('3', 'AT&T Inc.', '31.61', '-0.48', '2008-10-21');
  15. INSERT INTO `companies` VALUES ('4', 'Boeing Co.', '75.43', '0.53', '2008-10-13');
  16. INSERT INTO `companies` VALUES ('5', 'United Technologies Corporation', '63.26', '0.55', '2008-10-09');
  17. INSERT INTO `companies` VALUES ('6', 'Intel Corporation', '19.88', '0.31', '2008-10-15');
  18. INSERT INTO `companies` VALUES ('7', 'Exxon Mobil Corp', '68.10', '-0.43', '2008-10-17');

如下图所示建立工程:

攻克CakePHP系列二 表单数据显示

数据库配置文件如下:

  1. class DATABASE_CONFIG
  2. {
  3.     var $default = array('driver' => 'mysql',
  4.                                 'connect' => 'mysql_connect',
  5.                                 'host' => 'localhost',
  6.                                 'login' => 'root',
  7.                                 'password' => 'root',
  8.                                 'database' => 'cake_ext',
  9.                                 'prefix' => '');
  10.     var $test = array('driver' => 'mysql',
  11.                             'connect' => 'mysql_connect',
  12.                             'host' => 'localhost',
  13.                             'login' => 'root',
  14.                             'password' => 'root',
  15.                             'database' => 'cake_ext',
  16.                             'prefix' => '');
  17. }

companies_controller.php:

  1. <?php 
  2. class CompaniesController extends AppController
  3. {
  4.     var $name = 'Companies';
  5.     
  6.     function index()
  7.     {
  8.         $this->set('companies'$this->Company->findAll());
  9.     }
  10.     
  11.     function view($id = null)
  12.     {
  13.         $this->Company->id = $id;
  14.         $this->set('company'$this->Company->read());
  15.     }
  16. }
  17. ?>

company.php:

 

  1. <?php
  2. class Company extends AppModel
  3. {
  4.     var $name = 'Company';
  5. }
  6. ?>

index.thtml:

  1. <h1>Test companies</h1>
  2. <table>
  3. <tr>
  4. <th>Id</th>
  5. <th>company</th>
  6. <th>price</th>
  7. <th>change</th>
  8. <th>last update</th>
  9. </tr>
  10. <?php foreach ($companies as $company): ?>
  11. <tr>
  12. <td><?php echo $company['Company']['id']; ?></td>
  13. <td>
  14. <?php echo $html->link($company['Company']['company'], "/companies/view/".$company['Company']['id']); ?>
  15. </td>
  16. <td><?php echo $company['Company']['price']; ?></td>
  17. <td><?php echo $company['Company']['change']; ?></td>
  18. <td><?php echo $company['Company']['lastudp']; ?></td>
  19. </tr>
  20. <?php endforeach; ?>  
  21. </table>

view.thtml:

  1. <h1>Company: <?php echo $company['Company']['company']?></h1>
  2. <p><small>Id: <?php echo $company['Company']['id']?></small></p>
  3. <p>Price: <?php echo $company['Company']['price']?></p>
  4. <p>Change: <?php echo $company['Company']['change']?></p>
  5. <p>LastUpdate: <?php echo $company['Company']['lastudp']?></p>

访问http://localhost/cakephp/companies即可运行测试程序。

 

本代码参考自官方自带例子:http://book.cakephp.org/view/326/The-Cake-Blog-Tutorial

PHP 相关文章推荐
PHP 中的批处理的实现
Jun 14 PHP
PHP 程序员应该使用的10个组件
Oct 31 PHP
如何在symfony中导出为CSV文件中的数据
Oct 06 PHP
PHP可变函数的使用详解
Jun 14 PHP
php数组查找函数in_array()、array_search()、array_key_exists()使用实例
Apr 29 PHP
thinkphp文件处理类Dir.class.php的用法分析
Dec 08 PHP
php5.4以下版本json不支持不转义内容中文的解决方法
Jan 13 PHP
基于php实现随机合并数组并排序(原排序)
Nov 26 PHP
PHP 接入微信扫码支付总结(总结篇)
Nov 03 PHP
PHP实现时间比较和时间差计算的方法示例
Jul 24 PHP
php高性能日志系统 seaslog 的安装与使用方法分析
Feb 29 PHP
Git命令之分支详解
Mar 02 PHP
CakePHP去除默认显示的标题及图标的方法
Oct 22 #PHP
攻克CakePHP系列一 连接MySQL数据库
Oct 22 #PHP
PHP 反射机制实现动态代理的代码
Oct 22 #PHP
PHP中函数内引用全局变量的方法
Oct 20 #PHP
sqlyog 中文乱码问题的设置方法
Oct 19 #PHP
mysql5的sql文件导入到mysql4的方法
Oct 19 #PHP
php flush类输出缓冲剖析
Oct 19 #PHP
You might like
javascript some()函数用法详解
2014/11/13 PHP
phalcon model在插入或更新时会自动验证非空字段的解决办法
2016/12/29 PHP
PHP自动补全表单的两种方法
2017/03/06 PHP
javascript contains和compareDocumentPosition 方法来确定是否HTML节点间的关系
2010/02/04 Javascript
javascript 实现简单的table排序及table操作练习
2012/12/28 Javascript
jQuery链式操作如何实现以及为什么要用链式操作
2013/01/17 Javascript
js下拉框二级关联菜单效果代码具体实现
2013/08/03 Javascript
JAVASCRIPT模式窗口中下载文件无法接收iframe的流
2013/10/11 Javascript
javascript获取选中的文本的方法代码
2013/10/30 Javascript
JS iFrame加载慢怎么解决
2016/05/13 Javascript
Bootstrap 布局组件(全)
2016/07/18 Javascript
JavaScript中如何使用cookie实现记住密码功能及cookie相关函数介绍
2016/11/10 Javascript
AngularJS过滤器filter用法分析
2016/12/11 Javascript
jQuery模拟下拉框选择对应菜单的内容
2017/03/07 Javascript
AngularJS 异步解决实现方法
2017/06/12 Javascript
vue二级路由设置方法
2018/02/09 Javascript
详解webpack4之splitchunksPlugin代码包分拆
2018/12/04 Javascript
基于Vue2-Calendar改进的日历组件(含中文使用说明)
2019/04/14 Javascript
Openlayers3实现车辆轨迹回放功能
2020/09/29 Javascript
Vue-router中hash模式与history模式的区别详解
2020/12/15 Vue.js
Python struct.unpack
2008/09/06 Python
使用Python开发windows GUI程序入门实例
2014/10/23 Python
python用列表生成式写嵌套循环的方法
2018/11/08 Python
Python read函数按字节(字符)读取文件的实现
2019/07/03 Python
python实现LRU热点缓存及原理
2019/10/29 Python
pytorch模型存储的2种实现方法
2020/02/14 Python
Python3.8安装Pygame教程步骤详解
2020/08/14 Python
使用Python判断一个文件是否被占用的方法教程
2020/12/16 Python
CSS3 实现童年的纸飞机
2019/05/05 HTML / CSS
Html5移动端网页端适配(js+rem)
2021/02/03 HTML / CSS
发现世界上最好的珠宝设计师:JewelStreet
2017/12/17 全球购物
英国在线定做百叶窗网站:Make My Blinds
2020/08/17 全球购物
2015年校长新年寄语
2014/12/08 职场文书
文化大革命观后感
2015/06/17 职场文书
公文写作:教你写“建议书”
2019/05/07 职场文书
Java8 Stream API 提供了一种高效且易于使用的处理数据的方式
2022/04/13 Java/Android