Torna indietro   Hardware Upgrade Forum > Software > Programmazione

 Hisense 55U7SE: tuttofare e accessibile, il MiniLED per film, sport e gioco
Hisense 55U7SE: tuttofare e accessibile, il MiniLED per film, sport e gioco
MiniLED di fascia media con local dimming a 192 zone, 144 Hz nativi e audio firmato Devialet. La prova strumentale riscontra colori affidabili e gaming reattivo, per un prodotto molto accessibile e convincente. Ma la soundbar aggiuntiva è quasi d'obbligo
Kindle Scribe Colorsoft: riduce le cornici e diventa a colori, ma il prezzo è alto
Kindle Scribe Colorsoft: riduce le cornici e diventa a colori, ma il prezzo è alto
Amazon porta i colori sul suo Kindle da scrittura più grande: schermo Colorsoft a 11 pollici, processore quad-core, penna premium più reattiva e strumenti IA per le note, sono le note salienti. Il salto di prezzo rispetto al modello in bianco e nero si fa sentire, anche se la percezione è quella di trovarsi di fronte a un prodotto di fascia altissima, per veri appassionati
L'IA cambia tutte le regole della sicurezza tra vulnerabilità e sorveglianza. Intervista al CEO di Proofpoint
L'IA cambia tutte le regole della sicurezza tra vulnerabilità e sorveglianza. Intervista al CEO di Proofpoint
Abbiamo intervistato Sumit Dhawan, CEO di Proofpoint, per capire come stia cambiando il mondo della sicurezza con l'avvento dell'intelligenza artificiale e con il ritmo sempre più serrato a cui vengono trovate vulnerabilità nel software. Un problema significativo, che richiederà del tempo per essere risolto (o quantomeno arginato)
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 21-07-2006, 13:35   #1
negator136
Senior Member
 
L'Avatar di negator136
 
Iscritto dal: Jan 2003
Città: Brianza
Messaggi: 2687
PHP - Controllo immissione mail

ciao a tutti,

sono un principiante nell'uso del php e vorrei farvi una domanda...

ho un form in cui un utente può inserire la sua email per iscriversi alla newsletter. come posso fare in modo che il programma mi esegua un controllo e che mi avverta nel caso che la stringa non sia della forma ***@***.***?

grazie mille
__________________
"Le prime giornate di un europeo in America possono essere paragonate alla nascita di un uomo." Franz Kafka
"Don't cry because it's over. Smile because it happened." Theodor Geisel
negator136 è offline   Rispondi citando il messaggio o parte di esso
Old 21-07-2006, 13:40   #2
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Messaggi: 5206
Quote:
Originariamente inviato da negator136
ho un form in cui un utente può inserire la sua email per iscriversi alla newsletter. come posso fare in modo che il programma mi esegua un controllo e che mi avverta nel caso che la stringa non sia della forma ***@***.***?
Io mi sono fatto una funzione apposita che usa una espressione regolare:
Codice:
function is_email_valid ($email)
{
    if (eregi ("^[a-z0-9\._-]+@[a-z0-9\._-]+(\.[a-z]{2,3}){1,2}$", $email))
        return TRUE;    // Email valida
    else
        return FALSE;   // Email non valida
}
__________________
Andrea, Senior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
Java Versions Cheat Sheet
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 21-07-2006, 13:59   #3
negator136
Senior Member
 
L'Avatar di negator136
 
Iscritto dal: Jan 2003
Città: Brianza
Messaggi: 2687
Quote:
Originariamente inviato da andbin
Io mi sono fatto una funzione apposita che usa una espressione regolare:
Codice:
function is_email_valid ($email)
{
    if (eregi ("^[a-z0-9\._-]+@[a-z0-9\._-]+(\.[a-z]{2,3}){1,2}$", $email))
        return TRUE;    // Email valida
    else
        return FALSE;   // Email non valida
}

bella! grazie!


non conoscevo la funzione eregi. ora vado a scoprire cos'è
__________________
"Le prime giornate di un europeo in America possono essere paragonate alla nascita di un uomo." Franz Kafka
"Don't cry because it's over. Smile because it happened." Theodor Geisel
negator136 è offline   Rispondi citando il messaggio o parte di esso
Old 21-07-2006, 14:22   #4
ianaz
Senior Member
 
L'Avatar di ianaz
 
Iscritto dal: Jan 2005
Città: London, United Kingdom
Messaggi: 959
Quote:
Originariamente inviato da negator136
bella! grazie!


non conoscevo la funzione eregi. ora vado a scoprire cos'è
c'é anche per JavaScript...ti conviene quasi farne una in JS così da non caricare un altra pagina e poi farlo comuqnue sull'altra in php
__________________
zattix
ianaz è offline   Rispondi citando il messaggio o parte di esso
Old 21-07-2006, 14:29   #5
negator136
Senior Member
 
L'Avatar di negator136
 
Iscritto dal: Jan 2003
Città: Brianza
Messaggi: 2687
ok ho letto un po' di cose sulle espressioni regolari e sono riuscito ad interpretare la tua funzione

un paio di domande:

dove scrivi
Codice:
+(\.[a-z]{2,3}){1,2}$
potrei scrivere anche
Codice:
+\.([a-z]{2,3}){1,2}$
o sbaglio?

in questo caso le parentesi tonde sono ancora necessarie?

e a cosa serve {1,2} alla fine?

thanks
__________________
"Le prime giornate di un europeo in America possono essere paragonate alla nascita di un uomo." Franz Kafka
"Don't cry because it's over. Smile because it happened." Theodor Geisel
negator136 è offline   Rispondi citando il messaggio o parte di esso
Old 21-07-2006, 14:47   #6
negator136
Senior Member
 
L'Avatar di negator136
 
Iscritto dal: Jan 2003
Città: Brianza
Messaggi: 2687
Quote:
Originariamente inviato da ianaz
c'é anche per JavaScript...ti conviene quasi farne una in JS così da non caricare un altra pagina e poi farlo comuqnue sull'altra in php
purtroppo conosco il JS ancor meno del PHP (ovvero per nulla) quindi mi conviene cercare di restare su quest'ultimo per il momento...

almeno fino a quando non conoscerò il php ad un livello accettabile.
__________________
"Le prime giornate di un europeo in America possono essere paragonate alla nascita di un uomo." Franz Kafka
"Don't cry because it's over. Smile because it happened." Theodor Geisel
negator136 è offline   Rispondi citando il messaggio o parte di esso
Old 21-07-2006, 14:56   #7
ianaz
Senior Member
 
L'Avatar di ianaz
 
Iscritto dal: Jan 2005
Città: London, United Kingdom
Messaggi: 959
bé, se t'interessa:

Codice PHP:
Filtro = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-]{2,})+\.)+([a-zA-Z0-9]{2,})+$/;
if (!
Filtro.test(email@email.com)){
                      
alert("L'e-mail non é valida.");
                      } 



buona fortuna
__________________
zattix

Ultima modifica di ianaz : 21-07-2006 alle 16:11.
ianaz è offline   Rispondi citando il messaggio o parte di esso
Old 21-07-2006, 15:49   #8
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Messaggi: 5206
Quote:
Originariamente inviato da negator136
dove scrivi
Codice:
+(\.[a-z]{2,3}){1,2}$
potrei scrivere anche
Codice:
+\.([a-z]{2,3}){1,2}$
o sbaglio?

in questo caso le parentesi tonde sono ancora necessarie?

e a cosa serve {1,2} alla fine?
Non devi togliere quelle parentesi (altrimenti il significato cambia).

Come vedi non esiste 1 sola ed unica espressione regolare per testare la validità di una email. ianaz ne ha fornita una diversa dalla mia e fatta in Javascript.

Nella mia espressione, la parte (\.[a-z]{2,3}){1,2} serve per questo motivo: dopo il @dominio si possono avere tipicamente altri domini del tipo .com, .it ma anche .co.uk ad esempio.
In pratica, con la mia espressione, si può avere .AA oppure .AAA (vedi {2,3}) e tutto questo si può ripetere una o due volte (vedi {1,2}). Ecco il perché delle parentesi che servono a raggruppare il contenuto.
__________________
Andrea, Senior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
Java Versions Cheat Sheet
andbin è offline   Rispondi citando il messaggio o parte di esso
Old 21-07-2006, 17:24   #9
negator136
Senior Member
 
L'Avatar di negator136
 
Iscritto dal: Jan 2003
Città: Brianza
Messaggi: 2687
Quote:
Originariamente inviato da andbin
Non devi togliere quelle parentesi (altrimenti il significato cambia).

Come vedi non esiste 1 sola ed unica espressione regolare per testare la validità di una email. ianaz ne ha fornita una diversa dalla mia e fatta in Javascript.

Nella mia espressione, la parte (\.[a-z]{2,3}){1,2} serve per questo motivo: dopo il @dominio si possono avere tipicamente altri domini del tipo .com, .it ma anche .co.uk ad esempio.
In pratica, con la mia espressione, si può avere .AA oppure .AAA (vedi {2,3}) e tutto questo si può ripetere una o due volte (vedi {1,2}). Ecco il perché delle parentesi che servono a raggruppare il contenuto.

chiarissimo! non avevo pensato ai domini "doppi"

grazie a entrambi
__________________
"Le prime giornate di un europeo in America possono essere paragonate alla nascita di un uomo." Franz Kafka
"Don't cry because it's over. Smile because it happened." Theodor Geisel
negator136 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


 Hisense 55U7SE: tuttofare e accessibile, il MiniLED per film, sport e gioco Hisense 55U7SE: tuttofare e accessibile, il Min...
Kindle Scribe Colorsoft: riduce le cornici e diventa a colori, ma il prezzo è alto Kindle Scribe Colorsoft: riduce le cornici e div...
L'IA cambia tutte le regole della sicurezza tra vulnerabilità e sorveglianza. Intervista al CEO di Proofpoint L'IA cambia tutte le regole della sicurezza tra ...
L'Europa conta nella tecnologia e può essere autonoma. Cosa si è detto al Nextcloud Summit 2026 L'Europa conta nella tecnologia e può ess...
Dreame X60 Pro Ultra Complete: i bracci si estendono sempre di più Dreame X60 Pro Ultra Complete: i bracci si esten...
La sovranità digitale non è...
ESS obbligatorio da luglio: il rivoluzio...
Batterie Tesla rubate direttamente fuori...
Il Governo statunitense anticipa di 5 an...
Steam Machine costa troppo? Non per i ba...
AWS e Azure sono gatekeeper e vanno rego...
Huawei presenta una nuova infrastruttura...
Logitech G e Activision uniscono le forz...
Snapdragon Summit 2026: ecco quando sara...
Sardegna, debutta il primo treno a idrog...
CXMT non ci salverà dai prezzi de...
Tidal contro la musica creata con l'inte...
Videproiettore compatto XGIMI MoGo 2 Pro...
Narwal rilancia su Amazon per il post-Pr...
Il regista di 47 Ronin ha frodato Netfli...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 19:07.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v