Intereting Posts
Разделите теги, но сохраните первый Можно ли использовать базы данных SQLite с PHP без функций sqlite? Размытие строки одним или несколькими пробелами или вкладками Ошибка при установке драйвера MongoDb PHP с XAMPP на Max OS Lion Получение предыдущих и следующих 7 дней с определенной даты в PHP? PhpMailer не отправляет письма – ошибка TLS? Получите два слова из URL-адреса после косой черты в PHP Firebase Cloud Messaging, проблемы с получением уведомлений PhpDocumentor, установленный через PEAR на OSX, не работает – отсутствуют файлы? Посещения журнала в общей памяти Самый эффективный подход для многоязычного веб-сайта PHP Написание PHP-расширений с использованием Delphi 2010 и php4Delphi Иерархическое хранилище MySQL: поиск по всем родителям / бабушкам и т. Д. узлам задан идентификатор дочернего узла? Является ли шифрование AJAX для проверки подлинности с помощью jQuery? Объединение файлов MP3 в Linux Debian с помощью PHP

Устаревший: функция eregi () устарела в

Я пытаюсь представить значения в базу данных, но я получаю сообщение об ошибке

Устаревший: функция eregi () устарела в C: \ wamp \ www \ OB \ admin_add_acc.php в строке 20 и 27

Вот код:

<?php include 'db_connect.php'; if(isset($_POST['Submit'])) { $acc_type=ucwords($_POST['acc_type']); $minbalance=ucwords($_POST['minbalance']); if (!eregi ("^[a-zA-Z ]+$", stripslashes(trim($acc_type))))//line 20 { echo "Enter Valid Data for Account Type!"; exit(0); } else { if (!eregi ("^[0-9 ]+$", stripslashes(trim($minbalance))))//line 27 { 

eregi() устарел с PHP 5.3, вместо этого используйте preg_match() .

Обратите внимание, что preg_match() зависит от регистра, когда вы передаете модификатор i в своем регулярном выражении.

 include 'db_connect.php'; if(isset($_POST['Submit'])) { $acc_type=ucwords($_POST['acc_type']); $minbalance=ucwords($_POST['minbalance']); // Removed AZ here, since the regular expression is case-insensitive if (!preg_match("/^[az ]+$/i", stripslashes(trim($acc_type))))//line 20 { echo "Enter Valid Data for Account Type!"; exit(0); } else { // \d and 0-9 do the same thing if (!preg_match("/^[\d ]+$/", stripslashes(trim($minbalance))))//line 27 { } } } 

Из Википедии :

Устаревание – это статус, применяемый к функции программного обеспечения, характеристике или практике, указывающей на то, что его следует избегать, как правило, из-за его замены.

Взгляните на руководство по PHP для eregi . Как вы можете видеть, оно имеет следующее предупреждение:

Эта функция была DEPRECATED с PHP 5.3.0. Опираясь на эту функцию, очень не рекомендуется.

Далее на странице есть несколько советов о том, что использовать вместо этого:

eregi () устарел с PHP 5.3.0. preg_match () с модификатором i (PCRE_CASELESS) является рекомендуемой альтернативой.

Таким образом, вы можете использовать функцию preg_match .

Вы можете найти ответ здесь, в руководстве. Поскольку его устаревшая функция в версии php, которую вы используете, вы получите это предупреждение. Вместо ergi вы можете использовать preg_match . См. Руководство для предварительного соответствия