亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

CodeIgniter 4中錯誤驗證時未定義的變量

CodeIgniter 4中錯誤驗證時未定義的變量

PHP
慕婉清6462132 2022-07-22 19:09:27
我想檢查一個表格并顯示任何錯誤。我不明白 Code Igniter 4 如何讓我檢查$validation變量是否存在以顯示警報。當我用create()函數顯示表單時,我收到一條錯誤消息,告訴我變量不存在,這是正常的。我的問題如下,如何檢查視圖中是否存在錯誤以顯示警報?我的控制器<?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.'                                ]                        ]                );我<?= $validation->listErrors(); ?>用來顯示錯誤,但在第一次顯示表單時,在驗證它之前,沒有錯誤,所以我得到 Undefined variable: validation
查看完整描述

2 回答

?
HUH函數

TA貢獻1836條經驗 獲得超4個贊

試試這個代碼:

<?= \Config\Services::validation()->listErrors(); ?>

在查看文件


查看完整回答
反對 回復 2022-07-22
?
梵蒂岡之花

TA貢獻1900條經驗 獲得超5個贊

我通過檢查 $validation 變量是否已初始化解決了這個問題。CI 在顯示錯誤之前沒有檢查錯誤數組是否為空(在我的情況下不存在),這仍然很奇怪。


我視圖中的代碼:


<?php if(isset($validation)) { ?>

<div class="alert alert-danger" role="alert">

  <?= $validation->listErrors(); ?>

<?php } ?>


查看完整回答
反對 回復 2022-07-22
  • 2 回答
  • 0 關注
  • 107 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號