• Home
  • Forum
  • Fare Web
  • Javascript

Contare i caratteri user e dominio

  • Creatore Discussione Creatore Discussione Shyson
  • Data di inizio Data di inizio 30 Set 2012
  • Tag Tag
    conta caratteri javascript
Prec.
  • 1
  • 2
  • 3
Succ.
Primo Prec. 2 di 3 Succ. Ultimo

Vale2

Utente Attivo
28 Mag 2006
446
0
0
Livorno
  • 30 Set 2012
  • #21
Shyson ha scritto:
Si lo so, è una prova che avevo fatto anche io, non va bene perché la lunghezza del dominio dipende da quella dell'user, io ho bisogno di fare i controlli indipendenti
Clicca per allargare...

Ciao,

variabile[0] per user

variabile[1] per il dominio

devi fare lo split sulla @


Valeria.
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.606
54
48
TN
  • 30 Set 2012
  • #22
ho memorizzato la lunghezza dell'user e lo aggiunta ad 1 che è la chiocciola e a 8 che è la lunghezza massima
il ragionamento è sempre quello di prima ma con una variabile per la user
Codice:
<script>
            var nuser;
            function contaEmail(suoemail) {
                var val = document.forms.mioform1;
                var max=5  
                if(suoemail.indexOf('@')<0) {
                    nuser = suoemail.length;
                    val.suoemail.value = val.suoemail.value.substring(0,max);
                    output = nuser > max ? "Username: max 5 caratteri" : '';
                } 
                else {
                    document.getElementById('contaUserDom').innerHTML = '';
                    max =  8 + nuser + 1;                     
                    val.suoemail.value = val.suoemail.value.substring(0 ,max);
                    output = suoemail.value > max ? "Dominio: max 8 caratteri" : '';
                }
                if(output.length != 0) { 
                    document.getElementById('contaUserDom').innerHTML = (output + '');
                }
            }  
        </script>
 

Shyson

Utente Attivo
19 Ago 2012
1.179
1
38
  • 30 Set 2012
  • #23
Vale2 ha scritto:
Ciao,

variabile[0] per user

variabile[1] per il dominio

devi fare lo split sulla @


Valeria.
Clicca per allargare...

Lo split c'è già, come le metto sto variabili che sto confuso
 

Vale2

Utente Attivo
28 Mag 2006
446
0
0
Livorno
  • 30 Set 2012
  • #24
Shyson ha scritto:
Lo split c'è già, come le metto sto variabili che sto confuso
Clicca per allargare...

Dove splitti i caratteri prima di @ con [0] e dopo @ con [1]


Codice:
var variabile=document.nome_form.nomecampo.value.split('@')[0];

e

var variabile=document.nome_form.nomecampo.value.split('@')[1];
 

Shyson

Utente Attivo
19 Ago 2012
1.179
1
38
  • 30 Set 2012
  • #25
criric ha scritto:
ho memorizzato la lunghezza dell'user e lo aggiunta ad 1 che è la chiocciola e a 8 che è la lunghezza massima
il ragionamento è sempre quello di prima ma con una variabile per la user
Codice:
<script>
            var nuser;
            function contaEmail(suoemail) {
                var val = document.forms.mioform1;
                var max=5  
                if(suoemail.indexOf('@')<0) {
                    nuser = suoemail.length;
                    val.suoemail.value = val.suoemail.value.substring(0,max);
                    output = nuser > max ? "Username: max 5 caratteri" : '';
                } 
                else {
                    document.getElementById('contaUserDom').innerHTML = '';
                    max =  8 + nuser + 1;                     
                    val.suoemail.value = val.suoemail.value.substring(0 ,max);
                    output = suoemail.value > max ? "Dominio: max 8 caratteri" : '';
                }
                if(output.length != 0) { 
                    document.getElementById('contaUserDom').innerHTML = (output + '');
                }
            }  
        </script>
Clicca per allargare...
Ora va già meglio, riconosce la lunghezza di entrambi, ma al dominio non esce l'alert dell id
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.606
54
48
TN
  • 30 Set 2012
  • #26
di quale alert parli?
non vedo alert nel tuo primo post
 

Shyson

Utente Attivo
19 Ago 2012
1.179
1
38
  • 30 Set 2012
  • #27
criric ha scritto:
di quale alert parli?
non vedo alert nel tuo primo post
Clicca per allargare...

Per alert intend id document.getElementById('contaUserDom').innerHTML = (output + '');
 

Shyson

Utente Attivo
19 Ago 2012
1.179
1
38
  • 30 Set 2012
  • #28
Vale2 ha scritto:
Dove splitti i caratteri prima di @ con [0] e dopo @ con [1]


Codice:
var variabile=document.nome_form.nomecampo.value.split('@')[0];

e

var variabile=document.nome_form.nomecampo.value.split('@')[1];
Clicca per allargare...
Vedo che l'ultimo codice che mi ha dato criric funziona, manca solo l'avviso che richiama l'id del dominio...poi non so quale va meglio
 

Vale2

Utente Attivo
28 Mag 2006
446
0
0
Livorno
  • 30 Set 2012
  • #29
Shyson ha scritto:
Vedo che l'ultimo codice che mi ha dato criric funziona, manca solo l'avviso che richiama l'id del dominio...poi non so quale va meglio
Clicca per allargare...

Corretto è cosi:


Codice:
<script type="text/javascript">
var stringa = "valeria@pippofranco.it";
var splitta = stringa.split("@");
var strl = splitta[0];
var strlength = splitta[1];
document.write("Caratteri inseriti per Username: "+strl.length+ " Username: " + strl.toString() + "<br>");
document.write("Caratteri inseriti per il Dominio: "+strlength.length+ " Dominio " + strlength.toString());
</script>

Risultato:

Caratteri inseriti per Username: 7 Username: valeria
Caratteri inseriti per il Dominio: 14 Dominio pippofranco.it


Valeria.
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.606
54
48
TN
  • 30 Set 2012
  • #30
aggiungo il pezzo che manca al mio
HTML:
<script>            
            var nuser;
            function contaEmail(suoemail) {
                var val = document.forms.mioform1;
                var max=5;
                if(suoemail.indexOf('@')<0) {
                    nuser = suoemail.length;
                    val.suoemail.value = val.suoemail.value.substring(0,max);
                    output = nuser > max ? "Username: max 5 caratteri" : '';
                } 
                else {
                    document.getElementById('contaUserDom').innerHTML = '';
                    var dominio = val.suoemail.value.split('@');
                    max =  8 + nuser + 1;                     
                    val.suoemail.value = val.suoemail.value.substring(0 ,max);
                    output = dominio[1].length > 8 ? "Dominio: max 8 caratteri" : '';
                }
                if(output.length != 0) { 
                    document.getElementById('contaUserDom').innerHTML = (output + '');
                }
            }  
        </script>
 

Shyson

Utente Attivo
19 Ago 2012
1.179
1
38
  • 30 Set 2012
  • #31
criric ha scritto:
aggiungo il pezzo che manca al mio
HTML:
<script>            
            var nuser;
            function contaEmail(suoemail) {
                var val = document.forms.mioform1;
                var max=5;
                if(suoemail.indexOf('@')<0) {
                    nuser = suoemail.length;
                    val.suoemail.value = val.suoemail.value.substring(0,max);
                    output = nuser > max ? "Username: max 5 caratteri" : '';
                } 
                else {
                    document.getElementById('contaUserDom').innerHTML = '';
                    var dominio = val.suoemail.value.split('@');
                    max =  8 + nuser + 1;                     
                    val.suoemail.value = val.suoemail.value.substring(0 ,max);
                    output = dominio[1].length > 8 ? "Dominio: max 8 caratteri" : '';
                }
                if(output.length != 0) { 
                    document.getElementById('contaUserDom').innerHTML = (output + '');
                }
            }  
        </script>
Clicca per allargare...

Ora li riconosce:mavieni:

nel fare le prove vedo che il cursore rimane sempre in fondo al dominio, non si lascia spostare dai tasti-freccia
 

Vale2

Utente Attivo
28 Mag 2006
446
0
0
Livorno
  • 30 Set 2012
  • #32
criric ha scritto:
aggiungo il pezzo che manca al mio
HTML:
<script>            
            var nuser;
            function contaEmail(suoemail) {
                var val = document.forms.mioform1;
                var max=5;
                if(suoemail.indexOf('@')<0) {
                    nuser = suoemail.length;
                    val.suoemail.value = val.suoemail.value.substring(0,max);
                    output = nuser > max ? "Username: max 5 caratteri" : '';
                } 
                else {
                    document.getElementById('contaUserDom').innerHTML = '';
                    var dominio = val.suoemail.value.split('@');
                    max =  8 + nuser + 1;                     
                    val.suoemail.value = val.suoemail.value.substring(0 ,max);
                    output = dominio[1].length > 8 ? "Dominio: max 8 caratteri" : '';
                }
                if(output.length != 0) { 
                    document.getElementById('contaUserDom').innerHTML = (output + '');
                }
            }  
        </script>
Clicca per allargare...

Ciao criric, + un controllo per il . cosi se trova il . dopo il primo controllo e per username accetta

[CODEl]hhhhh@tuttomio.io.io.io.io.io.io.io[CODEl]
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.606
54
48
TN
  • 30 Set 2012
  • #33
e una if per il cursore
Codice:
if(dominio[1].length > 8)
   val.suoemail.value = val.suoemail.value.substring(0 ,max);
 

Shyson

Utente Attivo
19 Ago 2012
1.179
1
38
  • 30 Set 2012
  • #34
criric ha scritto:
e una if per il cursore
Codice:
if(dominio[1].length > 8)
   val.suoemail.value = val.suoemail.value.substring(0 ,max);
Clicca per allargare...

Ok va ancor meglio, gli avvisi escono e l'inserimento si blocca, ho notato però una cosa: inserisco l'user e poi passo al dominio, e se poi torno all'user non mi blocca più l'inserimento, cioè, ne posso inserire fin che voglio

PHP:
      var nuser;
            function contaEmail(suoemail) {
               var val = document.forms.mioform1;
                var max=5;
                if(suoemail.indexOf('@')<0) {
                    nuser = suoemail.length;
                    val.suoemail.value = val.suoemail.value.substring(0,max);
                    output = nuser > max ? "Username: max 5 caratteri" : '';
                } 
                else {
                    document.getElementById('contaUserDom').innerHTML = '';
                    var dominio = val.suoemail.value.split('@');
                    max =  8 + nuser + 1;  
                    if(dominio[1].length > 8)
                   val.suoemail.value = val.suoemail.value.substring(0 ,max);
                    output = dominio[1].length > 8 ? "Dominio: max 8 caratteri" : '';
                }
                if(output.length != 0) { 
                    document.getElementById('contaUserDom').innerHTML = (output + '');
                }
                    }
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.606
54
48
TN
  • 30 Set 2012
  • #35
ne posso inserire fin che voglio
Clicca per allargare...
Vero!
forse è meglio ripensarne la logica
 

Shyson

Utente Attivo
19 Ago 2012
1.179
1
38
  • 30 Set 2012
  • #36
Vale2 ha scritto:
Ciao criric, + un controllo per il . cosi se trova il . dopo il primo controllo e per username accetta

[CODEl]hhhhh@tuttomio.io.io.io.io.io.io.io[CODEl]
Clicca per allargare...

Vale, ho già un codice che controlla la mail

PHP:
function validaMail() {
var f = document.forms.mioform1;
if (f.suoemail.value.length != 0) { 
var reg = new RegExp("^([A-Za-z0-9!#$%&'*+\/=?^_~`{|}](([A-Za-z0-9!#$%&'*+\/=?^_~`{|}]*[.]?[A-Za-z0-9!#$%&'*+\/=?^_~`{|}]+))*([-]?[A-Za-z0-9!#$%&'*+\/=?^_~`{|}]+)?(([A-Za-z0-9!#$%&'*+\/=?^_~`{|}]*[.]?[A-Za-z0-9!#$%&'*+\/=?^_~`{|}]+))*@(.*)(\\.[a-z]{2,6}))$");
if (!f.suoemail.value.match(reg)) {  
document.getElementById('validaMail').innerHTML = "Inserire una Mail valida";
f.suoemail.focus();
return false;
}
else {
document.getElementById('validaMail').innerHTML = "";
}  
} 
else {
document.getElementById('validaMail').innerHTML = "";
}
return true;
}
 

Vale2

Utente Attivo
28 Mag 2006
446
0
0
Livorno
  • 30 Set 2012
  • #37
Ciao,

usi una RegExp per validare le mail e aggiungi anche questo controllo?


:crying:


Passo la Palla.

Buon lavoro.

Un saluto, Valeria :byebye:
 

Shyson

Utente Attivo
19 Ago 2012
1.179
1
38
  • 30 Set 2012
  • #38
Vale2 ha scritto:
Ciao,

usi una RegExp per validare le mail e aggiungi anche questo controllo?


:crying:


Passo la Palla.

Buon lavoro.

Un saluto, Valeria :byebye:
Clicca per allargare...
Perché, spiegami, che c'è che non va?
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.606
54
48
TN
  • 30 Set 2012
  • #39
Se inizi con due @@ saltano i controlli
direi che si puo scartare questo script

avevi provato altre soluzioni?
 

Vale2

Utente Attivo
28 Mag 2006
446
0
0
Livorno
  • 30 Set 2012
  • #40
Shyson ha scritto:
Perché, spiegami, che c'è che non va?
Clicca per allargare...


Ciao,

partendo dal fatto che con javascript puoi colo controllare l'inserimento dei dati da parte dell'utente, l'unico modo per vedere se chi ha inserito la mail è esatta e inviarla con un link per confermare, se la mail è corretta, con il link gli attivi il servizio, se è errata non lo abiliti e il mailer demon ti invia la mail per indirizzo inesistente.

Se io mi trovo a testa con tutti quei controlli esco.

Per la mail fai tutto con la RegExp quandi caratteri prima della @ quanti sono validi secondo le specifice RFC822 e gli stampi solo "inserire un'indirizzo email valido".

Credo sia sufficiente.

E' solo un parere.


Valeria.
 
Prec.
  • 1
  • 2
  • 3
Succ.
Primo Prec. 2 di 3 Succ. Ultimo
Devi accedere o registrarti per poter rispondere.

Discussioni simili

M
Contare totale risultati tabella in un periodo di tempo
  • miagy
  • 1 Dic 2022
  • PHP
Risposte
5
Visite
1K
PHP 16 Dic 2022
miagy
M
A
Contare gli elementi di un array
  • am170
  • 5 Giu 2020
  • PHP
Risposte
13
Visite
2K
PHP 5 Giu 2020
am170
A
Contare sessioni aperte e creare condizione
  • maxnegri
  • 22 Mar 2020
  • PHP
Risposte
1
Visite
1K
PHP 23 Mar 2020
maxnegri
L
contare record uguali in file csv
  • lucasky
  • 11 Mar 2020
  • PHP
Risposte
4
Visite
2K
PHP 11 Mar 2020
lucasky
L
B
  • Bloccata
[MySQL] contare quante un oggetto e' presente
  • bipolare75
  • 5 Ott 2019
  • MySQL
Risposte
2
Visite
1K
MySQL 6 Ott 2019
Max 1
[RISOLTO][Mysql] Contare le occorrenze in un campo tipo varchar
  • elpirata
  • 5 Apr 2019
  • MySQL
Risposte
2
Visite
2K
MySQL 6 Apr 2019
elpirata
P
[PHP] Contare quante volte uno stesso id si ripete nella tabella
  • Phelps
  • 18 Mar 2019
  • PHP
Risposte
12
Visite
4K
PHP 20 Mar 2019
Phelps
P
P
[PHP] Contare i mesi con timestamp.
  • Phelps
  • 5 Mar 2019
  • PHP
Risposte
8
Visite
2K
PHP 24 Mar 2019
Phelps
P
A
Contare n° totale oggetti da mysql
  • Andrea_2017
  • 25 Set 2017
  • PHP
Risposte
5
Visite
2K
PHP 26 Set 2017
3_g
C
Contare numero record uguali
  • colomber
  • 9 Ago 2017
  • Database
Risposte
3
Visite
2K
Database 10 Ago 2017
colomber
C
[Javascript] [AngularJS] contare opzioni selezionate di una select in un elenco ng-repeat
  • asevenx
  • 18 Lug 2017
  • Javascript
Risposte
0
Visite
1K
Javascript 18 Lug 2017
asevenx
G
[ACCESS2007]: contare li ultimi record con lo stesso valore in un campo, finchè il valore non cambia
  • Giowin
  • 22 Mag 2017
  • MS Access
Risposte
2
Visite
2K
MS Access 21 Lug 2017
almorel
A
[PHP] Contare numero dei giorni tra data_in e data_out
  • xone
  • 12 Mag 2017
  • PHP
Risposte
11
Visite
6K
PHP 15 Mag 2017
marino51
[PHP] Contare i record di una tabella
  • zorro
  • 25 Gen 2017
  • PHP
Risposte
6
Visite
8K
PHP 26 Gen 2017
zorro
F
Contare le righe con php ad oggetti
  • Fabio Grasso
  • 27 Apr 2015
  • MySQL
Risposte
0
Visite
3K
MySQL 27 Apr 2015
Fabio Grasso
F
Contare numero di righe in un form dinamico
  • asevenx
  • 4 Apr 2015
  • Javascript
Risposte
5
Visite
5K
Javascript 7 Apr 2015
asevenx
F
Miglior metodo per contare le righe di una query
  • Fabio Grasso
  • 19 Nov 2014
  • MySQL
Risposte
2
Visite
3K
MySQL 23 Nov 2014
Fabio Grasso
F
S
Contare valori uguali in una colonna
  • SardaFilm
  • 10 Ago 2014
  • PHP
Risposte
2
Visite
2K
PHP 11 Ago 2014
SardaFilm
S
N
Contare post
  • Night Assassin
  • 5 Ago 2014
  • MySQL
Risposte
2
Visite
2K
MySQL 5 Ago 2014
Night Assassin
N
L
contare nodi figli di un determinato nodo madre
  • LukeFerrari
  • 3 Apr 2014
  • XML
Risposte
0
Visite
3K
XML 3 Apr 2014
LukeFerrari
L
Condividi:
Facebook X (Twitter) LinkedIn WhatsApp e-mail Condividi Link
  • Home
  • Forum
  • Fare Web
  • Javascript
  • Italiano
  • Termini e condizioni d'uso del sito
  • Policy Privacy
  • Aiuto
  • Home
Community platform by XenForo® © 2010-2024 XenForo Ltd. | Traduzione a cura di XenForo Italia
Menu
Accedi

Registrati

  • Home
  • Forum
    • Nuovi Messaggi
    • Cerca...
  • Novità
    • Featured content
    • Nuovi Messaggi
    • Ultime Attività
X

Privacy & Transparency

We use cookies and similar technologies for the following purposes:

  • Personalized ads and content
  • Content measurement and audience insights

Do you accept cookies and these technologies?

X

Privacy & Transparency

We use cookies and similar technologies for the following purposes:

  • Personalized ads and content
  • Content measurement and audience insights

Do you accept cookies and these technologies?