我想檢查表單并顯示任何錯誤。我無法理解Code Igniter 4如何允許我檢查變量是否存在以顯示警報(bào)。$validation當(dāng)我顯示帶有函數(shù)的表單時,我收到一條錯誤消息,告訴我該變量不存在,這是正常的。create()我的問題如下,如何檢查視圖中是否存在錯誤以顯示警報(bào)?我的控制器<?php namespace App\Controllers;use CodeIgniter\Model\Site_model;class Site extends BaseController{ public function __construct() { helper('html', 'url'); } public function create() { helper(['form']); echo view('createSite'); } public function store() { helper(['form']); $validation = \Config\Services::validation(); $validation->setRules([ 'siteName' => 'required', 'password' => 'required', 'passwordConfirmation' => 'required|matches[password]' ], [ // Errors 'siteName' => [ 'required' => 'Merci de fournir un nom de site' ], 'password' => [ 'required' => 'Merci de fournir un mot de passe' ], 'passwordConfirmation' => [ 'required' => 'Merci de confirmer le mot de passe', 'matches' => 'Les mots de passe ne correspondent pas.' ] ] );我用于顯示錯誤,但在表單的第一次顯示時,在驗(yàn)證它之前,沒有錯誤,所以我得到了未定義的變量:驗(yàn)證<?= $validation->listErrors(); ?>
2 回答

紅顏莎娜
TA貢獻(xiàn)1842條經(jīng)驗(yàn) 獲得超13個贊
試試這個代碼:
<?= \Config\Services::validation()->listErrors(); ?>

瀟湘沐
TA貢獻(xiàn)1816條經(jīng)驗(yàn) 獲得超6個贊
我通過檢查$validation變量是否已初始化來解決此問題。仍然很奇怪的是,CI在顯示錯誤之前沒有檢查錯誤數(shù)組是否為空(在我的情況下不存在)。
我的視圖中的代碼:
<?php if(isset($validation)) { ?>
<div class="alert alert-danger" role="alert">
<?= $validation->listErrors(); ?>
<?php } ?>
- 2 回答
- 0 關(guān)注
- 130 瀏覽
添加回答
舉報(bào)
0/150
提交
取消