Contare i caratteri user e dominio

Discussione in 'Javascript' iniziata da Shyson, 30 Settembre 2012.

Tag (etichette):
  1. Shyson

    Shyson Utente Attivo

    Registrato:
    19 Agosto 2012
    Messaggi:
    1.111
    Mi Piace Ricevuti:
    1
    Punteggio:
    38
    Sesso:
    Maschio
    Come ti dicevo, questo andrebbe bene ma se tolgo alert( output + '' ); e metto l'id, non va

    PHP:
    function contaEmail(suoemail) {
    var 
    output '';
    if(
    suoemail.indexOf('@')<0) {
    output suoemail.length 'Username: max 5 caratteri' null;

    else {
    var 
    dominio suoemail.split('@')[1];
    output dominio.length 'Dominio: max 8 caratteri' null;
    }
    if(
    output.length != 0) { 
    alertoutput '' );
    }
    }  
     
  2. Shyson

    Shyson Utente Attivo

    Registrato:
    19 Agosto 2012
    Messaggi:
    1.111
    Mi Piace Ricevuti:
    1
    Punteggio:
    38
    Sesso:
    Maschio
    A me il controllo js serve solo per la lunghezza di user e dominio
     
  3. criric

    criric Super Moderatore Membro dello Staff SUPER MOD MOD

    Registrato:
    21 Agosto 2010
    Messaggi:
    5.607
    Mi Piace Ricevuti:
    54
    Punteggio:
    48
    Sesso:
    Maschio
    Località:
    TN
    è uguale se inizi con due chiocciole non ti fa i controlli
     
  4. Shyson

    Shyson Utente Attivo

    Registrato:
    19 Agosto 2012
    Messaggi:
    1.111
    Mi Piace Ricevuti:
    1
    Punteggio:
    38
    Sesso:
    Maschio
    Dici che questo sarebbe sufficiente?

    PHP:
    function contaEmail() {
    var 
    val document.forms.mioform1;
    max=20
    if (val.suoemail.value.length max) {
    val.suoemail.value val.suoemail.value.substring(0,max);
    document.getElementById('contaEmail').innerHTML "Mail: max 20 caratteri";

    else {
    document.getElementById('contaEmail').innerHTML "";
    }
     }
     
  5. Vale2

    Vale2 Utente Attivo

    Registrato:
    28 Maggio 2006
    Messaggi:
    446
    Mi Piace Ricevuti:
    0
    Punteggio:
    0
    Occupazione:
    Ex Studente - Cerca collaborazione per Asp e Asp.N
    Località:
    Livorno
    Ciao,

    perchè una espressione regolare non è in grado di controllare i caratteri inseriti prima e dopo la @ compresa la lunghezza.


    V.
     
  6. Vale2

    Vale2 Utente Attivo

    Registrato:
    28 Maggio 2006
    Messaggi:
    446
    Mi Piace Ricevuti:
    0
    Punteggio:
    0
    Occupazione:
    Ex Studente - Cerca collaborazione per Asp e Asp.N
    Località:
    Livorno

    controlli solo la lunghezza dei caratteri se basta per il tuo scopo.

    V.
     
  7. Shyson

    Shyson Utente Attivo

    Registrato:
    19 Agosto 2012
    Messaggi:
    1.111
    Mi Piace Ricevuti:
    1
    Punteggio:
    38
    Sesso:
    Maschio
    Il codice che vorrei mettere era per guidare meglio l'utente
     
  8. criric

    criric Super Moderatore Membro dello Staff SUPER MOD MOD

    Registrato:
    21 Agosto 2010
    Messaggi:
    5.607
    Mi Piace Ricevuti:
    54
    Punteggio:
    48
    Sesso:
    Maschio
    Località:
    TN
    e mettergli 2 campi?
    HTML:
    <input type='text' name='user'/> @ <input type='text' name='dominio'/>
     
  9. Shyson

    Shyson Utente Attivo

    Registrato:
    19 Agosto 2012
    Messaggi:
    1.111
    Mi Piace Ricevuti:
    1
    Punteggio:
    38
    Sesso:
    Maschio
    Non saprei...sto pensando se ne vale veramente la pena mettere quel codice e se potrebbe essere davvero utile quel controllo per l'utente, considerando che in base alle specifiche l'user deve avere una lungh. max 64 caratteri + @ e il dominio di 255 per un totale di 320.

    Chi mai metterebbe una lunghezza simile?

    Ma è anche vero che il dominio può essere anche un url web assoluto il quale può superare i 2000 caratteri.
     
  10. Vale2

    Vale2 Utente Attivo

    Registrato:
    28 Maggio 2006
    Messaggi:
    446
    Mi Piace Ricevuti:
    0
    Punteggio:
    0
    Occupazione:
    Ex Studente - Cerca collaborazione per Asp e Asp.N
    Località:
    Livorno
    Ciao,

    riprendo discussione, usi una RegExp per validare una mail usa i quantificatori per delimitare es: quanti caratteri minimi devono essere inseriti prima della @

    Valeria.
     
  11. Shyson

    Shyson Utente Attivo

    Registrato:
    19 Agosto 2012
    Messaggi:
    1.111
    Mi Piace Ricevuti:
    1
    Punteggio:
    38
    Sesso:
    Maschio
    Potrei fare anche così, sto provando ma non trova il delimitatore a tutto il blocco prima della chiocciola

    PHP:
    (([A-Za-z0-9!#$%&'*+\/=?^_~`{|}](([A-Za-z0-9!#$%&'*+\/=?^_~`{|}]*[.]?[A-Za-z0-9!#$%&'*+\/=?^_~`{|}]+))*([-]?[A-Za-z0-9!#$%&'*+\/=?^_~`{|}]+)?(([A-Za-z0-9!#$%&'*+\/=?^_~`{|}]*[.]?[A-Za-z0-9!#$%&'*+\/=?^_~`{|}]+))*){0,5}@...
     
    Ultima modifica: 1 Ottobre 2012
  12. Vale2

    Vale2 Utente Attivo

    Registrato:
    28 Maggio 2006
    Messaggi:
    446
    Mi Piace Ricevuti:
    0
    Punteggio:
    0
    Occupazione:
    Ex Studente - Cerca collaborazione per Asp e Asp.N
    Località:
    Livorno
    In che senso non trova, manca la parte finale della Reg, la @ sai dove si trova.
     
  13. Shyson

    Shyson Utente Attivo

    Registrato:
    19 Agosto 2012
    Messaggi:
    1.111
    Mi Piace Ricevuti:
    1
    Punteggio:
    38
    Sesso:
    Maschio
    Per ora sto provando la lunghezza dell'username
     
  14. Shyson

    Shyson Utente Attivo

    Registrato:
    19 Agosto 2012
    Messaggi:
    1.111
    Mi Piace Ricevuti:
    1
    Punteggio:
    38
    Sesso:
    Maschio
    Vale, sai che faccio? Controllo solo la lunghezza dell'username e uso questo codice, ma a video mi scrive null

    PHP:
    // Conta lunghezza username
    function contaUser(suoemail) {
    var 
    val document.forms.mioform1;
    var 
    output '';
    max=5
    if(suoemail.indexOf('@')<0) {
    val.suoemail.value val.suoemail.value.substring(0,max);
    output suoemail.length max "Username: max 5 caratteri" null;
    document.getElementById('contaUser').innerHTML = (output '');

     }

    onkeyup="contaUser(this.value);...
     
  15. Shyson

    Shyson Utente Attivo

    Registrato:
    19 Agosto 2012
    Messaggi:
    1.111
    Mi Piace Ricevuti:
    1
    Punteggio:
    38
    Sesso:
    Maschio
    Ho modificato, penso che terrò questo, l'unica cosa che mi manca è fa sparire l'avviso quando si inserisce la chiocciola

    PHP:
    // Conta lunghezza username
    function contaUser(suoemail) {
    var 
    val document.forms.mioform1;
    var 
    output '';
    max=5
    if(suoemail.indexOf('@')<0) {
    val.suoemail.value val.suoemail.value.substring(0,max);
    output suoemail.length max "Username: max 5 caratteri" '';
    document.getElementById('contaUser').innerHTML = (output '');

     }
     
  16. Shyson

    Shyson Utente Attivo

    Registrato:
    19 Agosto 2012
    Messaggi:
    1.111
    Mi Piace Ricevuti:
    1
    Punteggio:
    38
    Sesso:
    Maschio
    ...ma ho risolto anche questo aggiungendo un else:

    PHP:
    // Conta lunghezza username
    function contaUser(suoemail) {
    var 
    val document.forms.mioform1;
    var 
    output '';
    max=5
    if(suoemail.indexOf('@')<0) {
    val.suoemail.value val.suoemail.value.substring(0,max);
    output suoemail.length max "&bull;&nbsp;&nbsp;Username: max 5 caratteri" '';
    document.getElementById('contaUser').innerHTML = (output '');
    }
     else {
    document.getElementById('contaUser').innerHTML "";

     }
    Ultima cosa che rimane da sistemare è che quando arrivo al limite max totale della mail e torno all'user, questo mi permette di inserire altri caratteri anche se ero al limite massimo.
     
  17. Shyson

    Shyson Utente Attivo

    Registrato:
    19 Agosto 2012
    Messaggi:
    1.111
    Mi Piace Ricevuti:
    1
    Punteggio:
    38
    Sesso:
    Maschio
    Non riesco proprio a sistemare questa ultima cosa...ci siete ancora?
     
  18. Shyson

    Shyson Utente Attivo

    Registrato:
    19 Agosto 2012
    Messaggi:
    1.111
    Mi Piace Ricevuti:
    1
    Punteggio:
    38
    Sesso:
    Maschio
    L'ho modificato ancora ma non risolvo

    PHP:
    // Conta lunghezza username
    function contaUser(suoemail) {
    var 
    val document.forms.mioform1;
    max=5
    if(suoemail.indexOf('@')<0) {
    if(
    val.suoemail.value.length max) {
    val.suoemail.value val.suoemail.value.substring(0,max);
    document.getElementById('contaUser').innerHTML "Username: max 5 caratteri";
    }
     }
    else {
    document.getElementById('contaUser').innerHTML "";

     }
     
    Ultima modifica: 3 Ottobre 2012
Sto caricando...

Condividi questa Pagina