Domanda

Sto cercando di convalidare i dati dei moduli da server-side. il mio interesse è che l'utente è sufficiente compilare il form caratteri persiani.

Sto usando questo codice:

$name=trim($_POST['name']);
$name= mysql_real_escape_string($name);
if (preg_match('/^[\u0600-\u06FF]+$/',str_replace("\\\\","",$name))){$err.= "Please use Persian characters!";}

ma non funziona!

qui è un avvertimento:

Warning: preg_match() [function.preg-match]: Compilation failed: PCRE does not support \L, \l, \N, \U, or \u at offset 3 in C:\xampp\htdocs\site\form.php on line 38

Che cosa posso fare?

È stato utile?

Soluzione

Questo lavoro 'dovrebbe' ...

** ha aggiunto un ^ dopo l'apertura [di escludere caratteri arabi / Farsi dal match ...

if (preg_match('/^[^\x{600}-\x{6FF}]+$/u', str_replace("\\\\","",$name)))

Altri suggerimenti

http: // utf8- chartable.de/unicode-utf8-table.pl?start=1536&number=1024&utf8=0x&addlinks=1&htmlent=1

???? in 600 - gamma 6FF

fa solo:

preg_match('/^[پچجحخهعغفقثصضشسیبلاتنمکگوئدذرزطظژؤإأءًٌٍَُِّ\s]+$/u', $input);

it, en-num e FA carattere:

 preg_match('/^([a-zA-Z0-9 پچجحخهعغفقثصضشسیبلاتنمکگوئدذرزطظژؤإأءًٌٍَُِّ])+$/u', $input);

è possibile impostare Fa numeri o arabo ? ?

È necessario utilizzare questo:

if(preg_match("/^[آ ا ب پ ت ث ج چ ح خ د ذ ر ز ژ س ش ص ض ط ظ ع غ ف ق ک گ ل م ن و ه ی]/", $_POST['name']))

questo regex:

if(preg_match("/^[آ ا ب پ ت ث ج چ ح خ د ذ ر ز ژ س ش ص ض ط ظ ع غ ف ق ک گ ل م ن و ه ی]/", $_POST['name']))

numeri inclusi e lo spazio?

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top