CakePHP v3.9.3 数据一致检索 模糊检索

1.Apache,MySQL start

2.

index.ctp

C:\xampp\htdocs\mycakeapp\src\Template\People

 

<p>This is People table records.</p>
<?=$this->Form->create(null, 
    ['type'=>'post', 
    'url'=>['controller'=>'People', 
        'action'=>'index']]) ?>
<div>find</div>
<div><?=$this->Form->text('People.find') ?></div>
<div><?=$this->Form->submit('検索') ?></div>
<?=$this->Form->end() ?>

<hr>
<table>
<thead><tr>
    <th>id</th><th>name</th><th>mail</th><th>age</th><th></th>
</tr></thead>
<?php foreach($data->toArray() as $obj): ?>
<tr>
    <td><?=h($obj->id) ?></td>
    <td><a href="<?=$this->Url->build(['controller'=>'People', 
        'action'=>'edit']); ?>?id=<?=$obj->id ?>">
        <?=h($obj->name) ?></a></td>
    <td><?=h($obj->mail) ?></td>
    <td><?=h($obj->age) ?></td>
    <td><a href="<?=$this->Url->build(['controller'=>'People', 
        'action'=>'delete']); ?>?id=<?=$obj->id ?>">delete</a></td>
</tr>
<?php endforeach; ?>
</table>

3.一致检索

PeopleController.php

 

<?php
namespace App\Controller;

use App\Controller\AppController;

class PeopleController extends AppController{
    
    public function index() {
    if ($this->request->is('post')){
        $find = $this->request->data['People']['find'];
        $condition = ['conditions'=>['name'=>$find]];
        $data = $this->People->find('all', $condition);
    } else {
        $data = $this->People->find('all');
    }
    $this->set('data', $data);
    }
}
?>

 

4.

http://localhost/mycakeapp/people/

 

 

5.模糊检索

PeopleController.php

C:\xampp\htdocs\mycakeapp\src\Controller

 

 

<?php
namespace App\Controller;

use App\Controller\AppController;

class PeopleController extends AppController{
    
    public function index() {
    if ($this->request->isPost()){
        $find = $this->request->data['People']['find'];
        $condition = ['conditions'=>['name like'=>$find]];
        $data = $this->People->find('all', $condition);
    } else {
        $data = $this->People->find('all');
    }
    $this->set('data', $data);
    }
}
?>

6.

http://localhost/mycakeapp/people

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
CakePHP的操作日志记录可以使用CakePHP的内置功能。首先,您需要创建一个名为`operation_logs`的数据库表,其中包含以下字段: - id(主键) - user_id(用户ID) - action(操作名称) - created(创建时间) 接下来,您需要在CakePHP中创建一个`OperationLogsTable`模型来管理`operation_logs`表。该模型应该具有一个`logAction`方法,用于记录操作日志。该方法应该接受三个参数:用户ID,操作名称和记录时间。以下是一个示例实现: ```php // src/Model/Table/OperationLogsTable.php namespace App\Model\Table; use Cake\ORM\Table; class OperationLogsTable extends Table { public function logAction($userId, $action, $timestamp) { $log = $this->newEntity([ 'user_id' => $userId, 'action' => $action, 'created' => $timestamp ]); $this->save($log); } } ``` 现在,您可以在您的应用程序中的任何控制器中使用`OperationLogsTable`模型来记录操作日志。例如: ```php // src/Controller/ArticlesController.php namespace App\Controller; use App\Model\Table\OperationLogsTable; use Cake\Controller\Controller; class ArticlesController extends Controller { public function index() { $this->loadModel('OperationLogs'); $this->OperationLogs->logAction($this->Auth->user('id'), 'viewed articles', time()); // rest of action code } } ``` 此代码将记录一个名为“viewed articles”的操作,该操作由当前已验证用户执行,并在当前时间创建了一个操作日志记录。您可以像这样记录任何操作,只要您想要跟踪和记录。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值