Почему мое правило CodeIgniter 4 пользовательской проверки не работает в проверке форм?Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Почему мое правило CodeIgniter 4 пользовательской проверки не работает в проверке форм?

Сообщение Anonymous »

Я работаю над проектом Codeigniter 4 и пытаюсь использовать пользовательское правило проверки для моей формы. Тем не менее, правило, кажется, не запускается, и я не получаю ошибок проверки, даже если ввод должен сбой.

Код: Выделить всё

namespace App\Validation;

class CustomRules
{
public function noSpecialChars(string $str, string $fields, array $data): bool
{
return preg_match('/^[a-zA-Z0-9 ]+$/', $str) === 1;
}
}
Конфигурация проверки (app/config/valyation.php):
public $ruleSets = [
\CodeIgniter\Validation\Rules::class,
\App\Validation\CustomRules::class,
];
< /code>
Метод контроллера: < /p>
public function submit()
{
$validation = \Config\Services::validation();

$rules = [
'username' => 'required|noSpecialChars'
];

if (!$this->validate($rules)) {
return redirect()->back()->withInput()->with('errors', $this->validator->getErrors());
}

// proceed with saving
}
< /code>
Даже когда я ввожу что -то вроде John@doe, он все еще проходит проверку. Чего мне здесь не хватает?

Подробнее здесь: https://stackoverflow.com/questions/796 ... validation
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»