草庐IT

如何使用CakePHP中的复选框在数据库上保存数据

我是CakePHP的新手,因此我想在用户选中的复选框时将值1存储在DB中,此外还要在更新后保持检查,请帮助我解决此问题。另一件事默认值为Userhistory.tillnow是0Form->create('Userhistory',array('class'=>'form-inline'));?>Form->input('Userhistory.tillnow',array('type'=>'checkbox'));?>`Form->end();?>`看答案按着这些次序将数据库列更改为布尔列的tinyint(1)。保存您的请求数据$this->Userhistory->save($this->

php - CakePHP:查找上一小时的记录

昨晚我花了很多时间在互联网上搜索,试图找到一个解决方案来查找MySQL数据库中最后一小时创建的所有记录。我找到的一个到处张贴的答案甚至都不起作用。这是我根据我在网上找到的并认为可能可行的内容提出的:$recentUploads=$this->Upload->find('all',array('conditions'=>array('Upload.createdLIKE'=>date('Y-m-dH:i:s',strtotime('-1hour')))));但还是一点运气都没有。有什么想法吗? 最佳答案 您想要时间戳大于或等于1小时前

php - 无法在 CakePHP 应用程序中存储 01/01/1600 之前的日期

我有一个非常简单的表格。我用生成了文件bin\cakebakeall[tableName]我现在有一个可以添加/编辑/删除条目的表单。问题是,如果我输入1600年1月1日之前的日期,我会收到一条错误消息,指出该日期无效。我假设错误来自验证器。验证规则如下:/***Defaultvalidationrules.**@param\Cake\Validation\Validator$validatorValidatorinstance.*@return\Cake\Validation\Validator*/publicfunctionvalidationDefault(Validator$v

mysql - CakePHP 是在代码级别处理 FK,还是我也应该将 FK 添加到我的数据库中?

如果我添加带有ONDELETECASCADE之类的FK,我以后会遭受后果吗?如果不是,我应该为CakePHP的MySQL中的FK使用什么命名约定? 最佳答案 您可以看到布局的命名约定here.Cake根据您的modelassociations在代码中处理FK/关系以及通过命名约定隐含的关联。您可以通过在数据库级别定义FK关系来添加额外的“执行”层。如果您的数据库尊重这些,搬起石头砸自己的脚就更难了,但没有必要。它增加了在Cake的模型和数据库中保持关系同步的额外开销。 关于mysql-C

php - 如何在 CakePHP 3 中保存之前格式化日期字段?

我在AppController中使用了这个:Time::setToStringFormat('dd/MM/YYYY');我表单中的日期字段是一个输入类型“文本”,允许我的用户编写类似31/12/2015的内容。但是,当我尝试保存(MySQL日期)时,出现了一些TimeClass错误,因为在表中,现在的值是00-00-0000AlunosControllercode谢谢! 最佳答案 我的最终解决方案是在bootstrap上:date_default_timezone_set('America/Sao_Paulo');setlocale

php - 在不使用引号的情况下在查询中传递字符串 ''

我有这个查询代码:$conditions[]=array('codiceBiblioIN(?)'=>$tot);其中$tot是一个字符串(例如:2345,5657,4565,5678)。在这种情况下,查询将是:SELECT[...]WHEREcodiceBiblioIN('2345,5657,4565,5678')但它只会返回第一条记录。所以应该是:SELECT[...]WHEREcodiceBiblioIN(2345,5657,4565,5678)我该怎么做?如何构建查询我有这个查询代码://GeneralQuery$conditions=array('editoreLIKE'=>"

mysql - CakePHP 3 时间列获取添加日期

我的MySQL数据库中有许多列定义为“时间”。也就是说,他们有时间,但没有约会。当它们被CakePHP3ORM读取时,它们被转换为Cake\I18n\Time对象(通过Cake\Database\Type\TimeType类),但结果总是包含日期和时间,其中日期设置为当前日期。例如,如果值为“20:00:00”,debug($record['start_time'])将生成:object(Cake\I18n\Time){'time'=>'2015-06-21T20:00:00+0000','timezone'=>'UTC','fixedNowTime'=>false}当我在模板中回显它

mysql - 为什么我在 CakePhP 3.0 中得到 "TableRegistry not found"?

我有一个充满静态函数的类,我在我的Model/目录中调用UtilityFunctions。但是该类无法访问TableRegistry::Get,即使“use”语句已到位。下面是代码和错误。namespaceApp\Model\Table;useCake\ORM\TableRegistry;useApp\Model\Entity\Device;classUtilityFunctions{publicstaticfunctiongetDevice($deviceInfo){$devicesTable=TableRegistry::get('Devices');//TableRegistry

php - 用额外的字段保存 HABTM?

我正在尝试保存订单和订单中的产品。正在保存订单,但没有保存产品。我有一个orders表和一个products表以及一个orders_products表。在订单模型中,我设置了$hasAndBelongsToMany='Product';在orders_products表中,我有几个额外的字段:order_id、product_id加上price、quantity以获取销售价格和销售数量。我通过以下方式保存数据:$this->Order->saveAll($data);$data是这样的:Array([Order]=>Array([user_email]=>st@kr.com[billi

mysql - CakePHP:如何计算查找中的 hasMany 记录数?

我有两个模型,Post有很多Comment.如何选择所有Post少于两个Comment?我尝试使用find与'fields'=>array('COUNT(Comment.id)asnumComments','Post.*'),(然后在numComments中执行'conditions')。但是,我得到一个Unknowncolumn'Comment.id'in'fieldlist'错误。谢谢!编辑:我已经让CakePHP生成这个查询:SELECT`Post`.*,FROM`posts`AS`Post`LEFTJOINcommentsAS`Comment`ON(`Post`.`id`=`C