草庐IT

cakephp-helper

全部标签

php - 如何在 nginx 反向代理后面的 CakePHP 中安全地检测 SSL?

CakePHP(我见过的所有版本)检查$_SERVER['HTTPS']查看请求是否通过HTTPS而不是普通HTTP发出。我使用nginx作为负载均衡器,其后是Apache应用程序服务器。由于SSL连接在负载平衡器处终止,$_SERVER['HTTPS']就CakePHP而言,尚未设置。我想找到一种安全的方法来检测应用服务器上的HTTPS。到目前为止,我已将它放入我的CakePHP配置中:$request_headers=getallheaders();if((isset($_SERVER['HTTPS'])&&$_SERVER['HTTPS'])||(isset($request_h

php - CakePHP 2.1 中错误的自定义 View

我希望为CakePHP2.1中的错误创建自定义View我在这里阅读了以下问题:CakePHP2.0-Howtomakecustomerrorpages?但是有些东西没有按预期工作!1.)异常和错误似乎不是一回事,就好像我访问了一个虚假的url,我得到了内置的404页面,但是如果我在Controller中手动执行未找到的异常,它将调用自定义View...为什么是这样?我以为Cake中的所有错误都经过异常处理?2.)我正在尝试呈现View而不是实际重定向用户...例如:App::uses('ExceptionRenderer','Error');classAppExceptionRende

php - CakePHP 中的 Ajax 错误处理

我想做一些与this非常相似的事情但在CakePHP世界中用于AJAX请求。目前我正在这样做:$this->autoRender=false;$this->response->statusCode(500);它基于this.但是,此解决方案不允许我像Rails示例中那样包含自定义消息,因此,在我的客户端错误处理程序中,我可以显示包含在500错误响应中的消息。我如何在CakePHP中实现与RubyonRails示例相同的功能? 最佳答案 如上所述,异常是在CakePHP中返回AJAX请求错误的方式。这是我的解决方案,用于更好地控制错误

php - 如何在 CakePHP 3.2 中获取上次运行的查询?

我想在CakePHP3.2中获取最后执行的查询,我之前在CakePHP2.x中使用过以下内容:-functiongetLastQuery(){Configure::write('debug',2);$dbo=$this->getDatasource();$logs=$dbo->getLog();$lastLog=end($logs['log']);$latQuery=$lastLog['query'];echo"";print_r($latQuery);}我怎样才能在CakePHP3.x中做到这一点? 最佳答案 简而言之:您需要做的

php - Zend Framework 从 Zend_View_Helper 调用 View 助手

我有一个名为Zend_View_Helper_FormVars的助手,我的一个模块使用了它。我在application/common/helpers/GeneralFunctions.php中也有一个普通的助手我正在尝试从GeneralFunctions.php中的Zend_View_Helper_FormVars调用一个函数。这是Zend_View_Helper_FormVars的简短版本:classZend_View_Helper_FormVars{public$reqFieldVisual='*';public$roles=array('admin'=>'admin','user

php - 仅更改 cakephp 中的主页布局

如果我的整个网站都使用apps/view/layouts/default.ctp中指定的default.ctp布局,我该如何仅更改主页布局以使用homepage.ctp并让网站的其余部分使用默认设置。ctp? 最佳答案 复制/cake/libs/controller/pages_controller.php进入你的/app/controller/dir并执行以下任一操作:在display()末尾添加一行如果请求“主页”,则切换布局:if($page=='home')$this->layout='homepage';创建home()设

php - CakePhp 中的 unbindModel 调用。它是如何工作的?

cake中unbindModel是怎么发生的?$this->User->unbindModel(array('hasAndBelongsToMany'=>array('Friend')));我在一个函数的开头写了这个。但它仍然查询“friend”模型。在函数中间调用了paginate()。所以我认为分页器可能会生成查询。我确实在分​​页之前添加了一个unbindModel调用,它现在可以工作了。$this->User->unbindModel(array('hasAndBelongsToMany'=>array('Friend')));$user=$this->paginate("Us

php - CakePHP 找到 WHERE NOT EQUAL

你们能看到错误吗?我的AND条件被忽略了!我对那些阵列感到非常沮丧..$transaction_query=$this->Transaction->find('all',['limit'=>$countList,'fields'=>['Transaction.client_id','Transaction.name','Transaction.created','Transaction.message_id','Transaction.credit'],'conditions'=>['Transaction.id'=>$client_id],'AND'=>['Transaction.n

php - Cakephp 不同的

我如何使用DISTINCT获取具有total_time_driven_at_this_trip最高值的唯一用户ID,并从另一个具有belongsto关系的表中提取user_name基于user_id?我试过了...$this->set('tripNsws',$this->TripNsw->find('all',array('limit'=>20,'fields'=>array('DISTINCT(TripNsw.user_id)','TripNsw.total_time_driven_at_this_trip'),'group'=>array('TripNsw.user_id'),'o

php - CakePHP cacheHelper - 找不到 appController 错误

我将CacheHelper添加到我的应用程序中。在我的APP/Config/core.php中有Configure::write('Cache.check',true);在APP/Config/bootstrap.php我有Configure::write('Dispatcher.filters',array('AssetDispatcher','CacheDispatcher'));在我的Controller中我有:public$helpers=array('Text','Cache');public$cacheAction="1hour";我没有直接在此Controller或App