攻克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 存储文本换行实现方法
Jan 05 PHP
thinkphp 多表 事务详解
Jun 17 PHP
解析Linux下Varnish缓存的配置优化
Jun 20 PHP
php 模拟 asp.net webFrom 按钮提交事件实例
Oct 13 PHP
PHP和MySql中32位和64位的整形范围是多少
Feb 18 PHP
zend framework重定向方法小结
May 28 PHP
php文件上传类的分享
Jul 06 PHP
PHP并发查询MySQL的实例代码
Aug 09 PHP
详解PHP中的外观模式facade pattern
Feb 05 PHP
PHP一致性hash分布式算法封装类定义与用法示例
Aug 04 PHP
Laravel5.7框架安装与使用学习笔记图文详解
Apr 02 PHP
laradock环境docker-compose操作详解
Jul 29 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
简单谈谈PHP中strlen 函数
2016/02/27 PHP
php和redis实现秒杀活动的流程
2019/07/17 PHP
简单的JS多重继承示例
2008/03/13 Javascript
百度留言本js 大家可以参考下
2009/10/13 Javascript
zTree插件之多选下拉菜单实例代码
2013/11/06 Javascript
javascript检测浏览器的缩放状态实现代码
2014/09/28 Javascript
每天一篇javascript学习小结(面向对象编程)
2015/11/20 Javascript
javascript实现Email邮件显示与删除功能
2015/11/21 Javascript
全面解析Bootstrap布局组件应用
2016/02/22 Javascript
JS中关于事件处理函数名后面是否带括号的问题
2016/11/16 Javascript
JS日程管理插件FullCalendar中文说明文档
2017/02/06 Javascript
Node.js中.pfx后缀文件的处理方法
2017/03/10 Javascript
node.js中debug模块的简单介绍与使用
2017/04/25 Javascript
VUE页面中加载外部HTML的示例代码
2017/09/20 Javascript
解决vue的变量在settimeout内部效果失效的问题
2018/08/30 Javascript
基于Vue-Cli 打包自动生成/抽离相关配置文件的实现方法
2018/12/09 Javascript
vue-router重定向和路由别名的使用讲解
2019/01/19 Javascript
微信小程序结合Storage实现搜索历史效果
2019/05/18 Javascript
微信小程序停止其他视频播放当前视频的实例代码
2019/12/25 Javascript
微信小程序实现简单购物车功能
2020/12/30 Javascript
vue-cli4.0多环境配置变量与模式详解
2020/12/30 Vue.js
[00:57]林俊杰助阵DOTA2亚洲邀请赛
2015/01/28 DOTA
[01:03:54]Liquid vs IG 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
利用Python的Twisted框架实现webshell密码扫描器的教程
2015/04/16 Python
Python列表生成式与生成器操作示例
2018/08/01 Python
tensorflow如何批量读取图片
2019/08/29 Python
Css3新特性应用之视觉效果实例
2016/12/12 HTML / CSS
设计师珠宝:Ylang 23
2018/05/11 全球购物
前台文员我鉴定
2014/01/12 职场文书
银行实习生的自我评价
2014/01/13 职场文书
经理管理专业毕业自荐书范文
2014/02/12 职场文书
世界读书日的活动方案
2014/08/20 职场文书
2014医学院领导班子对照检查材料思想汇报
2014/09/19 职场文书
2014年保洁员工作总结
2014/11/19 职场文书
廉洁自律心得体会2016
2016/01/13 职场文书
MongoDB数据库部署环境准备及使用介绍
2022/03/21 MongoDB