攻克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 相关文章推荐
基于文本的留言簿
Oct 09 PHP
php 远程关机操作的代码
Dec 05 PHP
php字符串截取的简单方法
Jul 04 PHP
PHP自动识别字符集并完成转码详解
Aug 02 PHP
php使用str_replace实现输入框回车替换br的方法
Nov 24 PHP
PHP图像处理类库MagickWand用法实例分析
May 21 PHP
学习php设计模式 php实现适配器模式
Dec 07 PHP
微信开发之php表单微信中自动提交两次问题解决办法
Jan 08 PHP
PHP使用函数用法详解
Sep 30 PHP
PHP解析url并得到url参数方法总结
Oct 11 PHP
PHP观察者模式定义与用法实例分析
Mar 22 PHP
Laravel 修改默认日志文件名称和位置的例子
Oct 17 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实现格式化多行文本为Js可用格式
2015/04/15 PHP
thinkPHP自动验证、自动添加及表单错误问题分析
2016/10/17 PHP
PHP堆栈调试操作简单示例
2018/06/15 PHP
多个datatable共存造成多个表格的checkbox都被选中
2013/07/11 Javascript
jQuery让控件左右移动的三种实现方法
2013/09/08 Javascript
在js文件中写el表达式取不到值的原因及解决方法
2013/12/23 Javascript
IE与FireFox的JavaScript兼容问题解决办法
2013/12/31 Javascript
js实现使用鼠标拖拽切换图片的方法
2015/05/04 Javascript
javascript实现图片跟随鼠标移动效果的方法
2015/05/13 Javascript
JavaScript基础知识及常用方法总结
2016/01/10 Javascript
AngularJS 视图详解及示例代码
2016/08/17 Javascript
jquery实现百叶窗效果
2017/01/12 Javascript
基于require.js的使用(实例讲解)
2017/09/07 Javascript
原生JavaScript实现Ajax异步请求
2017/11/19 Javascript
JS代码实现电脑配置检测功能
2018/03/21 Javascript
Vue ElementUi同时校验多个表单(巧用new promise)
2018/06/06 Javascript
微信小程序实现的图片保存功能示例
2019/04/24 Javascript
通过js给网页加上水印背景实例
2019/06/17 Javascript
layui动态表头的实现代码
2019/08/22 Javascript
vue路由传参三种基本方式详解
2019/12/09 Javascript
nuxt配置通过指定IP和端口访问的实现
2020/01/08 Javascript
vue使用axios实现excel文件下载的功能
2020/07/16 Javascript
vue设置全局访问接口API地址操作
2020/08/14 Javascript
python控制windows剪贴板,向剪贴板中写入图片的实例
2018/05/31 Python
Python操作MySQL数据库的方法
2018/06/20 Python
对python过滤器和lambda函数的用法详解
2019/01/21 Python
python write无法写入文件的解决方法
2019/01/23 Python
Python基于Opencv来快速实现人脸识别过程详解(完整版)
2019/07/11 Python
Pytorch实现神经网络的分类方式
2020/01/08 Python
详解pycharm的python包opencv(cv2)无代码提示问题的解决
2021/01/29 Python
澳大利亚Rockwear官网:女子瑜伽、健身和运动服
2021/01/26 全球购物
应届大学生求职的自我评价
2013/11/17 职场文书
护理中职生求职信范文
2014/02/24 职场文书
2015学生会文艺部工作总结
2015/04/03 职场文书
面试通知单大全
2015/04/20 职场文书
Laravel中获取IP的真实地理位置
2021/04/01 PHP