Visualizzazione risultati 1 fino 5 di 5

Discussione: Controlla mail in explorer

  1. #1
    Guest

    Predefinito Controlla mail in explorer

    Codice:
    <script language="JavaScript">
    
    function verifica(modulo)
    {
     if ((modulo.nome.value=="")||(modulo.nome.value[0]==" "))
     {
      alert("Campo NOME mancante. Controlla gli spazi");
      modulo.nome.focus();
      return false;
     }
     else if ((modulo.mail.value=="")||(modulo.mail.value[0]==" ")||(modulo.mail.value[0]=="@")||(modulo.mail.value[0]=="."))
     {
      alert("Campo MAIL errato. Ricontrollare");
      modulo.mail.focus();
      return false;
     }
     result=0;
     i=0;
     for (i=0;i<40; i++)
      {
       if (modulo.mail.value[i]=="@")
        {
    	result++;
        }
       else if ((modulo.mail.value[i]==".")&&(result==1))
        {
    	return true;
        }
       else if ((modulo.mail.value[i]=="@")&&(result!=1))
        {
    	return false;
        }
       else if ((modulo.mail.value[i]==".")&&(result!=1))
        {
    	result=0;
        }
    
       
      }
     if (result==0)
      {
       alert("Campo MAIL errato. Ricontrollare");
       modulo.mail.focus();
       return false;
      }
     return true;
    }
    
    </script>

    Salve, qualcuno sa aiutarmi e spiegarmi il perchè questa maledetta funzione per controllare la mail (una funzione base) vada alla grande con firefox, konqueror e opera in linux e non va invece con internetexplorer su windows mentre va con firefox sempre su windows?

    L'errore in questione è che si apre sempre la finestrella di errore del campo mail, SEMPRE...
    Grazie dell'eventuale aiuto in anticipo...

    [DS] Usa il tag "code" e non il tag "quote" per il codice, si legge meglio...
    Ultima modifica di dementialsite : 30-01-2008 alle ore 13.14.55

  2. #2
    L'avatar di dementialsite
    dementialsite non è connesso Super Moderatore
    Data registrazione
    19-10-2004
    Residenza
    fuori Padova
    Messaggi
    5,046

    Predefinito

    Un punto di partenza potrebbe essere sapere quali siano gli errori che Explorer ti trova (se non ricordo male - IE non lo uso da tempo - devi fare doppio clic sulla barra di stato).

    Però posso già darti un consiglio: se devi verificare che il tuo "indirizzo e-mail" contenga la chiocciola o il punto, puoi farlo in un sol colpo con la funzione stringa.indexOf("@") (oppure stringa.indexOf(".")): restituiscono la posizione del carattere "@" (oppure ".") se presente, oppure -1 se non viene trovato...

    Stammi bene...
    Le questioni tecniche hanno risposte migliori nel forum pubblico, non trovi?

    When you don't know your next step... improvise

    ALTERVISTA WANTS YOU!
    Vuoi diventare moderatore su AlterVista? Scopri come...

  3. #3
    Guest

    Predefinito

    Ok grazie mille, per me rimane un mistero internet explorer comunque...

  4. #4
    Guest

    Predefinito

    Io di solito uso una funzione come questa:
    Codice HTML:
    <script language="javascript" type="text/javascript">
    function invia_mail ( ) {
    	var nome = document.contattaci.nome.value;
    	var email = document.contattaci.email.value;
    	var oggetto = document.contattaci.oggetto.value;
    	var testo = document.contattaci.testo.value;
    	var do_alert = false;
    	if (nome == '' || nome == 'Tuo nome') {
    		var alert_text = 'Il campo \'Nome\' è obbligatorio!';
    		do_alert = true;
    	}
    	if (email == '' || email == 'Tuo indirizzo e-mail') {
    		if (alert_text == null) {
    			var alert_text = 'Il campo \'E-mail\' è obbligatorio!';
    		} else {
    			alert_text = alert_text+'\nIl campo \'E-mail\' è obbligatorio!';
    		}
    		do_alert = true;
    	} else if (email.indexOf("@") == -1 || email.indexOf(".") == -1 || email == '@.') {
    		if (alert_text == null) {
    			var alert_text = 'Il campo \'E-mail\' è stato compilato in modo errato!';
    		} else {
    			alert_text = alert_text+'\nIl campo \'E-mail\' è stato compilato in modo errato!';
    		}
    		do_alert = true;
    	}
    	if (oggetto == '' || oggetto == 'Oggetto e-mail') {
    		if (alert_text == null) {
    			var alert_text = 'Il campo \'Oggetto\' è obbligatorio!';
    		} else {
    			alert_text = alert_text+'\nIl campo \'Oggetto\' è obbligatorio!';
    		}
    		do_alert = true;
    	}
    	if (testo == '' || testo == 'Testo e-mail') {
    		if (alert_text == null) {
    			var alert_text = 'Il campo \'Testo\' è obbligatorio!';
    		} else {
    			alert_text = alert_text+'\nIl campo \'Testo\' è obbligatorio!';
    		}
    		do_alert = true;
    	}
    	if (do_alert == true) window.alert(alert_text);
    	else document.contattaci.submit();
    }
    </script>
    (ovviamente puoi aggiungere un controllo per ogni campo...)
    Funziona come qua: http://tryphpnuke.altervista.org/php...contattaci.php
    Ma tempo addietro avevo trovato una regex carina per il controllo dell'indirizzo e-mail in JS, se la ritrovo te la posto... Trovo che anche le regex sianoun buon modo per controllare le mail inserite...

    EDIT: Ecco, se vuoi controllare bene l'indirizzo e-mail con JavaScript guarda qui: http://www.quirksmode.org/js/mailcheck.html
    Ultima modifica di tryphpnuke : 30-01-2008 alle ore 17.31.28 Motivo: Aggiunto link

  5. #5
    Guest

    Predefinito

    Grazie, comunque ho aggirato il problema...

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •