regex convalida mail

SolidSnake4

Utente Attivo
23 Ott 2007
505
0
0
Salve a tutti volevo chiedervi una cosa, una regex fatta in questo modo :

$regex = "~^[a-zA-Z0-9._]+\@[a-zA-Z]+\.[a-z]{2,4}~";

è buona come strumento di validazione, oppure posso aggiungere qualche altro controllo per renderlà meno bypassabile ?
 

jan267

Utente Attivo
6 Mar 2003
1.955
2
38
33
Milano
twitter.com
Io ho creato questa:
Codice:
^([a-z0-9_\-.]+)\@([a-z0-9_\-.]+)\.([a-z]+){2,6}$
Rispetto alla tua ha qualcosa in più: la possibilità di aggiungere il carattere "-", il dominio può contere anche numeri e il carattere "-" e "." (un sottodominio) e infine il TLD dell'email può essere dai 2 ai 6 caratteri, non dai 2 ai 4.
 

SolidSnake4

Utente Attivo
23 Ott 2007
505
0
0
e per controllare che il nome della mail prima della @, in maniera tale che non contenga caratteri speciali tipo $%&£"!()=?:; ecc ecc, ho fatto in questo modo:

^[a-zA-Z0-9._]+

ma non basta cosa devo aggiungere altro ?

Ma il dominio di una mail può contenere numeri ?
 
Ultima modifica:

SolidSnake4

Utente Attivo
23 Ott 2007
505
0
0
^[a-zA-Z0-9._-]+ in questo modo ? continua a darmi come valido un nome del tipo brambilla%&_fumagalli
 

jan267

Utente Attivo
6 Mar 2003
1.955
2
38
33
Milano
twitter.com
Boh, non so che dirti, sbaglierai la sintassi...
Se fai così funziona sicuramente:
PHP:
if (!preg_match('#^([a-z0-9_\-.]+)\@([a-z0-9_\-.]+)\.([a-z]+){2,6}$#', $email)) {
  echo 'Email non valida';
}
 

SolidSnake4

Utente Attivo
23 Ott 2007
505
0
0
ma non per la mail intera. Quella l'ho già fatta è funziona, ora stavo controllando i caratteri di un nome che viene inserito, in modo che contenga solo caratteri alfanumerici capito ?
 

jan267

Utente Attivo
6 Mar 2003
1.955
2
38
33
Milano
twitter.com
Beh, conoscendo le regexp cosa c'è di difficile?... o non le conosci?
PHP:
if (!preg_match('#[\w\d]+#', $nome)) {
  echo 'Inserire solo caratteri alfanumerici';
}
 

SolidSnake4

Utente Attivo
23 Ott 2007
505
0
0
non ci avevo pensato ad usare i metacaratteri stavo facendo tutto tipo a-zA-Z ecc ecc grazie cmq non va lo stesso continua a darmi come valido i caratteri $%&£ vabè
 
Ultima modifica:

jan267

Utente Attivo
6 Mar 2003
1.955
2
38
33
Milano
twitter.com
Dimenticanza mia...
PHP:
if (!preg_match('#^[\w\d]+$#', $nome)) {
  echo 'Inserire solo caratteri alfanumerici';
}
così 10000000% funziona.
 

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
ma non per la mail intera. Quella l'ho già fatta è funziona, ora stavo controllando i caratteri di un nome che viene inserito, in modo che contenga solo caratteri alfanumerici capito ?

Per ammettere SOLO caratteri alfanumerici potrebbe andare anche qualcosa del genere:
PHP:
preg_match("/^[a-z0-9]+$/i",$var)
 

SolidSnake4

Utente Attivo
23 Ott 2007
505
0
0
e il controllo della mail che ho fatto va bene o la posso fare un pò più complessa per renderla meno bypassabile ?
 

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
e il controllo della mail che ho fatto va bene o la posso fare un pò più complessa per renderla meno bypassabile ?
Credo che basti e avanzi per prevenire gli attacchi provenienti dagli "umani", per i bootnet c'è solo CAPTCHA ma anche quello comincia a presentare qualche limite :)
 
Discussioni simili
Autore Titolo Forum Risposte Data
A Regex per isolare link interni con rel noopener PHP 0
MarcoGrazia [PHP] [regex] Validare un url PHP 2
K Come eliminare attributi regex per validazione con javascript Javascript 0
MarcoGrazia [Javascript] Regex per la validazione di un numero di telefono. Javascript 2
A [PHP] Blocco mail spam con regex PHP 2
otto9due [PHP] Dubbio esistenzaile: Regex email e stampa valori trovati.. PHP 5
Shyson Regex strana jQuery 0
MarcoGrazia [regex] validare un textbox con solo caratteri alfabetici. Javascript 6
A Regex per estrapolare url da testo PHP 5
G problema con regex PHP 0
Shyson Regex multipla PHP 0
S Regex ASP.NET 1
M RegEX ottenere testo tra due tag PHP 6
A haccess regex username PHP 11
A Regex array PHP 1
A Regex per domini .de PHP 2
S Regex per replace di un BBcode con parametri PHP 4
Shyson Regex accetta 2 volte il trattino Javascript 1
9 Estrarre Link da pagina web con una Regex Programmazione 0
L aiuto per questa semplice regex PHP 5
G Regex in PHP PHP 2
J Scritp invio email convalida indirizzo PHP 13
S Convalida dati form & risultati query PHP 4
M Convalida form in presenza di link Classic ASP 1
Frank10 Convalida w3c problema con i plug in facebook HTML e CSS 4
novello88 Problema convalida W3C pagina HTML5 HTML e CSS 8
M Problema convalida checkbox Javascript 0
C convalida email Flash 2
F problema con convalida form e checkbox Javascript 1
P javascript convalida in tempo reale... Javascript 4
T Problema Modulo - Campo Convalida e JS Javascript 2
L convalida w3c di un file .asp HTML e CSS 1
R Invio mail con allegati multipli PHP 0
A Mail con funzione mail() riconosciute come spam PHP 9
R Invio mail con allegati da directory PHP 1
M Vendo o scambio pacchetto mail di utenti Email Marketing 4
Daniele_Carrara Problema timeout - invio mail PHP 7
G Con Microsoft Outlook 2016 come si possono cancellare le mail doppie? Posta Elettronica 0
G Evitare che mi continui ad arrivare in alice mail spam Posta Elettronica 2
M configurare mail register.it (con 1000 invii/die) su Outlook Posta Elettronica 0
Marti1! Problema con casella mail cancellata Posta Elettronica 3
U PHP bottone per invio mail o ritorno al form PHP 15
G Invio mail con php da dati prelevati da un database PHP 9
AC1 [PHP] Invio Mail PHP 18
A [HTML] Testo mail non visualizzabile su IOS HTML e CSS 0
L Problema funzione mail() PHP PHP 3
I [PHP] inviare form con allegato tramite una mail PHP 1
A Libero mail non funziona Posta Elettronica 2
B [PHP] Invio mail automatico dopo compilazione form - db PHP 25
L PopUp tramite PHP se la mail inserita è già registrata nel database PHP 3

Discussioni simili