[RISOLTO]chiarimento su preg_match()

frenkytribe

Utente Attivo
17 Gen 2013
87
0
0
Ciao a tutti,
in un form di registrazione, ho la necessità di stabilire i criteri per la password scelta dall'utente, nel mio caso devo fare in modo che l'utente possa inserire una password compresa da soli caratteri alfanumerici e soltanto il punto(.) o underscore(_).
Poniamo il caso che che ricevo tramite post il valore del campo password, nel controllo cosa devo inserire non mi è molto chiaro.

PHP:
<?
if(preg_matc('/[A-Za-z0-9 .... ,$_POST[password])){
    //accettato
}else{
   //presenti caratteri non validi
}
?>
Dove ci sono i puntini mi blocco, non riesco a capire il funzionamento nonostante abbia studiato più volte le espressioni regolari... Scusate
 
ciao
prova questa
PHP:
<?php
//$_POST['password']="AABB23";//output OK
$_POST['password']="AA_B.B23";//output OK
//$_POST['password']="AA_B.B.cc";//output errore
if(preg_match('/[A-Za-z0-9]{3,8}([._]{0,2})/',$_POST['password'])){
    echo "OK";
}else{
   echo "errore";
}
?>
 
ciao
es [A-Za-z0-9]{3,8}
stringa di caratteri alfanumerici di minimo tre caratteri e massimo 8
te puoi cambiarli come ti serve, io ho fatto in modo che uno non poosa inviarti es una stringa di tutti punti, cioe
minimo come detto da 3 a 8 caratteri alfanun e senza altro o al massimo due o punto/i o undescore/s o un punto+un undescosre
 

Discussioni simili