Controllare che il form sia composto da soli numeri e non sia vuoto?

ppigna

Utente Attivo
23 Dic 2013
63
0
0
Buongiorno a tutti,
potete dirmi come creare il comando (e dove posizionarlo nel mio codice), in Javascript per controllare che un input (type="text") non sia vuoto e che sia composto da soli numeri (e in caso contrario inviare un alert con scritto "Compilare i campi con soli numeri")? Ho cercato su internet, ma non riesco a fare funzionarlo, forse perché la mia è una situazione particolare: ho un form che contiene tre input diversi, posizionati in diverse parte della pagina. Ecco il codice:
HTML:
<body>
		<div id="ac_background" class="ac_background">
			<img class="ac_bgimage" src="http://forum.mrwebmaster.it/images/galassia1.jpg" alt="Background"/>
			<div class="ac_overlay"></div>
			<div class="ac_loading"></div>
		</div>
		<div id="ac_content" class="ac_content">
			<h1>Oracolo del Web<span><br />Completa i campi e poi premi invio</span></h1>
			<form name="form" action="frase.php" method="post" onblur="return checkban()">
			<div class="ac_menu"> 
				<ul>
					<li>
						<a href="http://forum.mrwebmaster.it/images/galassia2.jpg">Giorno</a>
						<div class="ac_subitem">
							<span class="ac_close"></span>
							<h2>Giorno</h2>
							<ul>
								<li>Che giorno è oggi? Inserisci il numero qui sotto.</li>
								<li><br /></li>
							</ul>
							<input type="text" name="giorno" size="15"><!-- <input type="button" name="Invia" value="  Invia  " size="10"> -->
							<?php //$giorno = htmlspecialchars($_POST['giorno']); ?>
						</div>
					</li>
					<li>
						<a href="http://forum.mrwebmaster.it/images/galassia3.jpg">Mese</a>
						<div class="ac_subitem">
							<span class="ac_close"></span>
							<h2>Mese</h2>
							<ul>
								<li>In che mese siamo oggi? Inserisci il numero qui sotto.</li>
								<li><br /></li>
							</ul>
							<input type="text" name="mese" size="15"><!-- <input type="button" name="Invia" value="  Invia  " size="10"> -->
							<?php //$mese = htmlspecialchars($_POST['mese']); ?>
						</div>
					</li>
					<li>
						<a href="http://forum.mrwebmaster.it/images/galassia4.jpg">Nome</a>
						<div class="ac_subitem">
							<span class="ac_close"></span>
							<h2>Nome</h2>
							<ul>
								<li>Da quante lettere è formato il tuo (primo) nome? Inserisci il numero qui sotto.</li>
								<li><br /></li>
							</ul>
							<input type="text" name="nome" size="15"><!-- <input type="button" name="Invia" value="  Invia  " size="10"> -->
							<?php //$nome = htmlspecialchars($_POST['nome']); ?>
						</div>
					</li>
					<li>
						<a href="http://forum.mrwebmaster.it/images/galassia5.jpg">Invio</a>
						<div class="ac_subitem">
							<span class="ac_close"></span>
							<h2>Invio</h2>
							<ul>
								<li><p>Premi Invia per visualizzare il responso dell'oracolo.</p></li>
								<li><br /></li>
							</ul>
							<input type="submit" name="Invia"  value="  Invia  " size="10" onclick="location.href='frase.php'">
						</div>
					</li>
				</ul>
			</div>
			</form>
		</div>
		<div class="ac_footer">
			<span>Copyright (c) 2013 oracolodelweb.altervista.org | All rights reserved | Template by: <a href="http://www.tympanus.net">tympanus.net</a></span>
			<span style="float:right; padding-right:5px">Created by Giulio Pignatti and Luca Nisidi</span>
		</div>

Grazie mille :)
 

ppigna

Utente Attivo
23 Dic 2013
63
0
0
ciao
criric ha ragione, però ricorda che i controlli js sono facilmente bypassabili

Bypassabili nel senso che si possono aggirare? In caso non sarebbe un gran problema: all'utenza del mio sito (prevalentemente ragazzi in cerca di svago) non interessa molto di fregarmi, lo script servirebbe solo per non indurli in errore.
(Con "ha ragione" intendi che quello è il js più adatto alla situazione?)
Grazie e buona serata :)
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
si, guardando il 3d indicato da criric trovi quello che ti serve.
si si possono aggirare e quindi inserire valori che possono provocare danni, è sempre meglio una verifica lato server
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
se me la adattassi al mio codice
devi solo copiare lo script nella pagina e aggiungere agli input che vuoi controllare
HTML:
onkeyup="char_consentiti(this)"
 

ppigna

Utente Attivo
23 Dic 2013
63
0
0
devi solo copiare lo script nella pagina e aggiungere agli input che vuoi controllare
HTML:
onkeyup="char_consentiti(this)"

Ok, grazie mille veramente :)
Ma se volessi che comparisse ANCHE un messaggio alert quando uno scrive una lettera al posto di un numero?
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Ma se volessi che comparisse ANCHE un messaggio alert
puoi aggiungere un alert in questa parte dello script
Codice:
if (!valore.charAt(i).match(re)) {
    // avviso
    alert("Sono consentiti solo caratteri numerici");
    // aggiorno il valore del campo
    campo.value = valore.substring(0, i);
    // esco
    return;
}
 

ppigna

Utente Attivo
23 Dic 2013
63
0
0
puoi aggiungere un alert in questa parte dello script
Codice:
if (!valore.charAt(i).match(re)) {
    // avviso
    alert("Sono consentiti solo caratteri numerici");
    // aggiorno il valore del campo
    campo.value = valore.substring(0, i);
    // esco
    return;
}

Perfetto, grazie mille: mi sei stato molto d'aiuto :) buon pomeriggio
 

criric

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
21 Ago 2010
5.607
54
48
TN
Danni di che genere?
prova a dare una letta veloce a questi esempi
se l'argomento ti interessa troverai in rete un sacco di articoli al riguardo
Calcola che se hai un sito online non sarà frequentato solo da persone che conosci e che non hanno nessun interesse a "fregarti"
purtroppo il web è pieno di personaggi che per noia o su commissione passano il tempo a tentare di rovinare il lavoro degli altri
 
Discussioni simili
Autore Titolo Forum Risposte Data
E come controllare che in una stringa non ci siano altre lettere tranne alcune definite? PHP 1
C Esercizio: Inserire elenco numeri e controllare che siano di tupi numerico Javascript 2
D controllare valore in tabella mysql PHP 0
G Controllare valori in 2 tabelle PHP 5
seranto [ASP] Controllare il testo inserito in Textarea Classic ASP 6
N [PHP] Controllare condizione ciclo While PHP 9
K [PHP] Controllare dati database tra due valori PHP 18
L [PHP] if con array per controllare l'ip locale PHP 1
Fede72 Controllare le checkbox con PHP PHP 6
max_400 Come si fa a controllare se un sito è sicuro? Sicurezza e Virus 2
B [MySQL] CONTROLLARE I PRIMI CARATTERI DI UN CAMPO VARCHAR MySQL 8
T [ASP] controllare popup Classic ASP 3
Jonn [PHP] Controllare l'inizio di una stringa PHP 5
M Controllare se il prezzo inserito è espresso in centesimi e non in millesimi PHP 0
J Php ajax sql controllare se l'id esiste in una tabella db PHP 2
matteoraggi Controllare le vendite con Analytics e condividerne uan parte con altri Google Analytics 0
L Controllare il numero dei campi segnati Javascript 0
A Controllare l'animazione di una skills bar realizzata con i keyframes css3 Javascript 1
I controllare email Javascript 3
Sevenjeak Controllare dipendenze del programma Java 1
A Controllare affidabilità di un sito PHP 0
D Complicamento scrittura INPUT ( più input da controllare ) Javascript 1
L funzione si e funzione no controllare se e stata richiamata o no Javascript 1
B Controllare se un codice è in un DB Javascript 1
F Controllare peso di un file in un imput Javascript 3
P Controllare se un utente ha gia votato!! PHP 4
M Controllare se una stringa è contenute in un'altra Javascript 2
E come faccio a controllare la lunghezza e la composizione di alcune variabili? PHP 2
L Controllare datetime PHP 6
M controllare email da android Sviluppo app per Android 0
C Controllare l'esistenza di un record in una tabella. MySQL 2
I Controllare DIV tramite passaggio mouse su link in altro DIV HTML e CSS 5
M PHP controllare sia attiva una sola istanza del codice PHP 0
valient13 Controllare da database se è on o off PHP 5
U Controllare all'interno di un file incluso se un altro file è stato incluso... PHP 7
I controllare player quicktime da pulsante Javascript 1
M Controllare Presenza di un link Classic ASP 4
M controllare se un utente è ancora collegato. PHP 3
V Controllare due chechbox e un campo mail Javascript 5
T controllare gli errori nel log di php PHP 1
M controllare responseText Ajax 1
T controllare il volume Flash 2
M Ho bisogno di TUTTI VOI! Si può controllare dalla sezione "admin" un template ?? Flash 0
Linchiamoci Script per controllare i banner. PHP 5
K Controllare il click su un link Classic ASP 1
S Controllare se è installato flash flayer Javascript 0
lupin3m [help] problema nel controllare il filmato con i simboli Flash 7
N Webcast Microsoft su un prodotto per gestire e controllare l'infrastruttura IT Altri Annunci 1
I Login da controllare Flash 0
O controllare se esiste già un utente nel database PHP 4

Discussioni simili