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

 更新时间:2008年10月22日 22:04:49   作者:  
CakePHP表单数据显示的方法步骤

首先建立数据库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');

如下图所示建立工程:

数据库配置文件如下:

  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强制转换类型及远程管理插件的安全隐患

    这篇文章主要介绍了PHP强制转换类型及远程管理插件的安全隐患,需要的朋友可以参考下
    2014-06-06
  • 利用ThinkPHP内置的ThinkAjax实现异步传输技术的实现方法

    利用ThinkPHP内置的ThinkAjax实现异步传输技术的实现方法

    ThinkPHP的官方文档没有给出ThinkAjax的使用方法,令很多初学者使用起来有些不便,今天学到这里,也碰到了很多问题,花时间深究下,做个学习笔记,希望能对初学者有帮助
    2011-12-12
  • PHP时间类完整实例(非常实用)

    PHP时间类完整实例(非常实用)

    这篇文章主要介绍了PHP时间类完整实例,涉及PHP针对日期、时间、星期等的获取与比较等操作技巧,非常简单实用,需要的朋友可以参考下
    2015-12-12
  • 详解PHP的执行原理和流程

    详解PHP的执行原理和流程

    这篇文章主要介绍了详解PHP的执行原理和流程,对此感兴趣的同学,可以详细看一下
    2021-04-04
  • PHP抽象类基本用法示例

    PHP抽象类基本用法示例

    这篇文章主要介绍了PHP抽象类基本用法,结合实例形式分析了php抽象类的概念、原理、定义、使用方法及相关操作注意事项,代码注释包含较为详尽的说明信息,需要的朋友可以参考下
    2018-12-12
  • 再谈PHP错误与异常处理

    再谈PHP错误与异常处理

    这篇文章主要介绍了再谈PHP错误与异常处理,对错误和异常感兴趣的同学,可以参考下
    2021-04-04
  • PHP小程序支付功能完整版【基于thinkPHP】

    PHP小程序支付功能完整版【基于thinkPHP】

    这篇文章主要介绍了PHP小程序支付功能,结合实例形式分析了基于thinkPHP框架实现微信支付功能的原理、操作步骤及注意事项,需要的朋友可以参考下
    2019-03-03
  • php简单生成随机颜色的方法

    php简单生成随机颜色的方法

    这篇文章主要介绍了php简单生成随机颜色的方法,涉及php随机数与数组相关操作技巧,需要的朋友可以参考下
    2016-05-05
  • PHP下10件你也许并不了解的事情

    PHP下10件你也许并不了解的事情

    PHP 是我用过的语言中,最令人恼火的但同时也是最有趣的语言。我之所以说“令人恼火”主要是因为函数命名极其不一致。尽管我每天都要用到这些函数,我还是要想一下“究竟是 str_pos 还是 strpos?是 str_split 还是 strsplit?”。
    2008-09-09
  • php实现将任意进制数转换成10进制的方法

    php实现将任意进制数转换成10进制的方法

    这篇文章主要介绍了php实现将任意进制数转换成10进制的方法,涉及php数制转换的相关技巧,非常具有实用价值,需要的朋友可以参考下
    2015-04-04

最新评论