攻克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 02 PHP
php max_execution_time执行时间问题
Jul 17 PHP
php 下载保存文件保存到本地的两种实现方法
Aug 12 PHP
ThinkPHP实现事务回滚示例代码
Jun 23 PHP
php中的curl_multi系列函数使用例子
Jul 29 PHP
PHP处理Json字符串解码返回NULL的解决方法
Sep 01 PHP
如何实现php图片等比例缩放
Jul 28 PHP
PHP实现的mysql主从数据库状态检测功能示例
Jul 20 PHP
php获取微信共享收货地址的方法
Dec 21 PHP
PHP示例演示发送邮件给某个邮箱
Apr 03 PHP
Laravel框架控制器的request与response用法示例
Sep 30 PHP
浅析PHP反序列化中过滤函数使用不当导致的对象注入问题
Feb 15 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
千呼万唤始出来,DOTA2勇士令状不朽宝藏Ⅱ现已推出
2020/08/25 DOTA
CI使用Tank Auth转移数据库导致密码用户错误的解决办法
2014/06/12 PHP
在Laravel 的 Blade 模版中实现定义变量
2019/10/14 PHP
isArray()函数(JavaScript中对象类型判断的几种方法)
2009/11/26 Javascript
JavaScript实现单击下拉框选择直接跳转页面的方法
2015/07/02 Javascript
Javascript实现鼠标右键特色菜单
2015/08/04 Javascript
easyui Droppable组件实现放置特效
2015/08/19 Javascript
jQuery实现向下滑出的二级菜单效果实例
2015/08/22 Javascript
Jquery uploadify上传插件使用详解
2016/01/13 Javascript
jQuery实现的多张图无缝滚动效果【测试可用】
2016/09/12 Javascript
JS中BOM相关知识点总结(必看篇)
2016/11/22 Javascript
jquery.zclip轻量级复制失效问题
2017/01/08 Javascript
Bootstrap免费字体和图标网站(值得收藏)
2017/03/16 Javascript
vue.js学习之vue-cli定制脚手架详解
2017/07/02 Javascript
vue 全选与反选的实现方法(无Bug 新手看过来)
2018/02/09 Javascript
Vuex中mutations与actions的区别详解
2018/03/01 Javascript
JS实现数组删除指定元素功能示例
2019/06/05 Javascript
详解elementui之el-image-viewer(图片查看器)
2019/08/30 Javascript
js禁止查看源文件屏蔽Ctrl+u/s、F12、右键等兼容IE火狐chrome
2020/10/01 Javascript
vue项目打包后请求地址错误/打包后跨域操作
2020/11/04 Javascript
[00:56]跨越时空加入战场 全新祈求者身心“失落奇艺侍祭”展示
2019/07/20 DOTA
Python中__init__和__new__的区别详解
2014/07/09 Python
Python装饰器实现几类验证功能做法实例
2017/05/18 Python
简单了解python 邮件模块的使用方法
2019/07/24 Python
python可视化实现KNN算法
2019/10/16 Python
pytorch 实现在预训练模型的 input上增减通道
2020/01/06 Python
python多项式拟合之np.polyfit 和 np.polyld详解
2020/02/18 Python
详解Python IO口多路复用
2020/06/17 Python
CSS3轻松实现清新 Loading 效果的简单实例
2016/06/06 HTML / CSS
巴西葡萄酒销售网站:Wine.com.br
2017/11/07 全球购物
Spartoo比利时:欧洲时尚购物网站
2017/12/06 全球购物
英国100%防污和防水的靴子:Muck Boot Company
2020/09/08 全球购物
前台文员的岗位职责
2013/11/14 职场文书
2014年党员学习“三严三实”思想汇报
2014/09/15 职场文书
2014年学校卫生工作总结
2014/11/20 职场文书
四十九个javascript小知识实用技巧
2021/11/20 Javascript