2013-08-29 11 views
6

Ich versuche Werte an die Datenbank zu senden, aber ich erhalte eine FehlermeldungDeprecated: Function eregi() ist veraltet in

Deprecated: Function eregi() in C veraltet: \ wamp \ www \ OB \ admin_add_acc.php auf der Leitung 20 und 27

Hier ist der Code:

<?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 
{      
+2

Verwenden Sie 'preg_match' anstelle von' eregi' – Bora

+0

Nun .. das ist, weil 'ereg *' Funktionen veraltet sind. Genau das [Handbuch sagt] (http://php.net/manual/en/migration53.deprecated.php) –

+0

so viele Duplikate dazu. * soooooo * viele. – Spudley

Antwort

13

eregi() ist veraltet wie von PHP 5.3, verwenden preg_match() stattdessen verwenden können.

Beachten Sie, dass preg_match() nur Groß- und Kleinschreibung nicht beachtet, wenn Sie den Modifikator i in Ihrem regulären Ausdruck übergeben.

include 'db_connect.php'; 
if(isset($_POST['Submit']))   
{    
    $acc_type=ucwords($_POST['acc_type']); 
    $minbalance=ucwords($_POST['minbalance']); 

    // Removed A-Z here, since the regular expression is case-insensitive     
    if (!preg_match("/^[a-z ]+$/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 
     { 
     } 
    } 
} 
+0

danke so viel richard es hat geklappt – Jush

0

Sie die Antwort finden können here in the manual .Seit its a Veraltete functi auf in der PHP-Version verwenden Sie Sie erhalten, dass warning.Instead von ergi Sie preg_match .Siehe das Handbuch für preg match

1

Von Wikipedia:

Deprecation ist ein Status an eine Computer-Software-Funktion angewandt, charakteristisch oder Praxis zeigt es soll vermieden werden, in der Regel, weil es abgelöst.

Werfen Sie einen Blick auf das PHP-Handbuch für eregi. Wie Sie sehen, gibt es folgende Warnung:

Diese Funktion wurde ab PHP 5.3.0 DEPERCATED. Von dieser Funktion wird dringend abgeraten.

Weiter unten auf der Seite gibt es einige Tipps, was stattdessen zu verwenden:

eregi() als PHP 5.3.0 veraltet. preg_match() mit dem Modifizierer i (PCRE_CASELESS) ist die vorgeschlagene Alternative.

Sie können stattdessen die preg_match Funktion verwenden.

Verwandte Themen