MVC 代码书写:

控制器代码书写:

class IndexController extends Zend_Controller_Action

{

function init()

{

$this->registry = Zend_Registry::getInstance();

$this->view = $this->registry['view'];

$this->view->baseUrl = $this->_request->getBaseUrl();

}

function indexAction()

{

$this->view->word=" I love spurs";

echo $this->view->render("index.html");

}

function addAction(){

//如果是POST过来的值.就增加.否则就显示增加页面

}

}

?>

控制当中写内容:

$this->view->word="ggg";

$this->view->render("index.html");

---->index.html echo $this->word;

application->config.ini

[general]

db.adapter=PDO_MYSQL

db.config.host=localhost

db.config.username=root

db.config.password=

db.config.dbname=think_zw

配置文件引入到framework里面去

//配置数据库参数,并连接数据库

$config=new Zend_Config_Ini('./application/config/config.ini',null, true);

Zend_Registry::set('config',$config);

$dbAdapter=Zend_Db::factory($config->general->db->adapter,$config->general->db->config->toArray());

$dbAdapter->query('SET NAMES UTF8');

Zend_Db_Table::setDefaultAdapter($dbAdapter);

Zend_Registry::set('dbAdapter',$dbAdapter);

单一入口模式:localhost/index/add/访问index模块下的add方法

function addAction(){}(在IndexController.php)

默认访问为index模块下的index方法

再建立一个模块model里面的message.php

class Message extends Zend_Db_Table

{

protected $_name ="message";

protected $_primary = 'id';

}

?>

模块实例化:

function indexAction()

{

$message=new message();//实例化数据库类

//获取数据库内容

$this->view->messages=$message->fetchAll()->toArray();

echo $this->view->render('index.phtml');//显示模版

}

<?foreach ($this->messages as $message): ?>

<?php echo $message['title']; ?><?php echo $message['content']; ?>

*************

修改和删除数据

kk

ll

index.phtml里面加上

编辑

删除

添加一个新的方法:edit.phtml

function editAction(){

$message = new Message();

$db = $message->getAdapter();

if(strtolower($_SERVER['REQUEST_METHOD'])=='post'){

$id = $this->_request->getPost('id');

$cid = $this->_request->getPost('cid');

$title = $this->_request->getPost('title');

$set = array(

'cid'=>$cid,

'title'=>$title

);

$where = $db->quoteInto('id = ?',$id);

//更新数据

$message->update($set,$where);

unset($set);

echo '修改数据成功!返回';

}else{

$id = $this->_request->getParam('id');

$this->view->messages = $message->fetchAll('id='.$id)->toArray();

echo $this->view->render('edit.phtml');

}

}

function delAction(){

$message = new Message();

$id = (int)$this->_request->getParam('id');

if($id > 0){

$where = 'id = ' . $id;

$message->delete($where);

}

echo '删除数据成功!返回';

}

异常出现:

Fatal error: Uncaught exception 'Zend_Controller_Dispatcher_Exception' with message 'Invalid controller specified (index.php)' in

解决办法:在index.php中的

$frontController =Zend_Controller_Front::getInstance();后加上

$frontController->setParam('useDefaultControllerAlways', true);

*******

id/3 等于以前的?id=3

phpzend框架_PHP开源开发框架ZendFramework使用中常见问题说明及解决方案相关推荐

  1. php开发问题及解决方案,PHP开源开发框架ZendFramework使用中常见问题说明及解决方案...

    MVC 代码书写: 控制器代码书写: } function indexAction() { $this->view->word=" I love spurs"; ech ...

  2. php常见问题及其解决方案,PHP开源开发框架ZendFramework使用中常见问题说明及解决方案...

    mvc 代码书写: 控制器代码书写: class indexcontroller extends zend_controller_action { function init() { $this-&g ...

  3. Flex开源开发框架

    Adobe Flex及相关技术正成为RIA领域的主流.虽然Flex社区的规模还远比不上Java或Microsoft平台,但它正在Flex RIA开发者们的栽培下稳健地成长.许多开源开发框架也因此被创造 ...

  4. 基于Qt的桌面客户端组件化框架DT 开源啦

    这个是本人在工作中基于QT开发的组件化桌面开发框架,目前打算开源出来提供给大家,节省大家的开发时间和效率,希望对大家的开发有所帮助,也欢迎提出意见和改进建议 1. 为什么开源DT框架 DT框架,本身就 ...

  5. 阿里分布式事务框架GTS开源了!

    点击上方"方志朋",选择"置顶或者星标" 你的关注意义重大! 就在昨天,阿里分布式事务框架GTS开源了一个免费社区版Fescar,看到了这个消息内心非常的激动. ...

  6. 源码推荐:基于uni-app前端框架,开源版本还开源免费商用

    今天要给大家介绍一款电商软件,目前有两个主流版本:免费开源版.商业开源版.首先需要和大家普及下什么是开源软件? 提到开源,一定绕不开Linux.Linux 是一款开源软件,我们可以随意浏览和修改它的源 ...

  7. 分布式事务框架_阿里分布式事务框架GTS开源啦!

    点击上方"Java后端技术",选择"置顶或者星标" 每天带你看高清大图哦! 整理:开源中国 就在9号这天,阿里分布式事务框架GTS开源了一个免费社区版Fesca ...

  8. 几个提升Go业务开发效率的流行框架和开源库

    最近总有一些初学Go语言的小伙伴问我在业务开发中一般都使用什么web框架.开源中间件:所以我总结了我在日常开发中使用到的库,这些库不一定是特别完美的,但是基本可以解决日常工作需求,接下来我们就来看一下 ...

  9. 4款基于Django框架的开源软件推荐

    Django是一款高性能的Python web框架,鼓励快速开发和干净.务实的设计.Django项目是一个定制框架,它源自一个在线新闻Web站点,于2005年以开源的形式被释放出来.Django的重点 ...

最新文章

  1. 守护线程不一定执行finally块
  2. 课后作业-阅读任务-阅读提问-3 。
  3. 用隐式反馈做推荐模型,你做对了吗
  4. MFC中的Document-View结构
  5. Iterator作用
  6. vue设置html自动跳转路由器,vue2.0项目实现路由跳转的方法详解
  7. 容器编排技术 -- Kubernetes Namespaces
  8. 解决Windows x64bit环境下无法使用PLSQL Developer连接到Oracle DB中的问题
  9. 六石管理学:个人机器的开发环境也有硬性要求
  10. 鸡啄米VS2010/MFC编程入门教程系列
  11. 华为存储学习笔记-3
  12. linux tar压缩文件命令,linux解压压缩命令tar详解
  13. 舆情监测产品的过去与现在
  14. Bouncy Castle 密钥生成发放证书
  15. 基于中医药知识图谱智能问答(二)
  16. 攀藤G5S数据位编码
  17. 如何辨识“真假”敏捷?
  18. 选择与循环:剪刀石头布_python项目:剪刀石头布游戏
  19. 淘宝淘金币助手,自动完成淘金币任务,蚂蚁庄园和蚂蚁森林,天猫领红包和收取能量
  20. Dave Oracle 学习 手册 第一版 下载 说明

热门文章

  1. ubuntu16.04安装docker(阿里云镜像)
  2. Please read Security section of the manual to find out how to run mysqld as root!错误解决
  3. dubbo配置参考手册
  4. 用 Python 识别图片中的文字
  5. Python玩转各种多媒体,视频、音频到图片
  6. JDBC原理及应用模板
  7. “发明在商业上获得成功”对专利法22条第三款有关创造性规定的影响
  8. qq互联开放平台 开源SDK共享 常见问题
  9. 【selenium 小练手 抓取某大厂TP】
  10. 操作系统原理 —— 操作系统概述