Se nel campo e-mail inserite una e-mail incompleta, senza estensione del dominio, tipo nome@tiscali , il form accetta la mailbox.
C'è un modo per specificare che ci deve essere anche un "." dopo la "@"?
Ho visto che anche su Drupal.org, se provate la registrazione con una e-mail di quel tipo viene accettata.
Ho provato ad installare http://drupal.org/project/email_verify ma la situazione non cambia.
Fantastico!!! (in senso ironico naturalmente)
Cambiamo immediatamente l' hook_validate del modulo contact!
Ma questo vale per tutti allora? aiuto XD
Sfruttando il codice di danzisiweb ho scritto un modulo "mailvalidator" con questo codice, però a me salta sempre questo controllo.
mailvalidator.module (da inserire in una cartella mailvalidator e uploadare in sites/all/modules/custom, ovviamente c'è da mettere anche il file mailvalidator.info)
<?php
/**
* @file
* Valida il campo e-mail con il dominio.
*
* Valida anche il TLD del dominio e non solo
* la presenza della @
*/
function mailvalidator_mail_page_validate($form, &$form_state) {
global $user;
if (!$form_state['values']['cid']) {
form_set_error('cid', t('You must select a valid category.'));
}
$email = $form_state['values']['mail'];
$regexp="/^[a-z0-9]+([_\\.-][a-z0-9]+)*@([a-z0-9]+([\.-][a-z0-9]+)*)+\\.[a-z]{2,6}$/i";
if ( !preg_match($regexp, $email) ) {
form_set_error('mail', t('You must enter a valid e-mail address.'));
}
list($username, $domain) = split('@',$email);
if (!checkdnsrr($domain,'MX')) {
form_set_error('mail', t('You must enter a valid e-mail domain address'));
}
if ($user->uid==1) {
if (!valid_email_address($form_state['values']['destinatariomail'])) {
form_set_error('destinatariomail', t('Enter a valid e-mail address destinatario-mail.'));
}
}
}
Vedere http://www.maxmile.it/contact