Validare un input text di una form

Max

Nuovo Utente
13 Set 2004
20
0
0
Salve. Nel seguente modulo, mi serve controllare che i campi non siano vuoti, e se nel caso lo sono, bisogna riempirli con delle stringhe, come ad es. "campo vuoto", ecc.. giusto per non farle restare vuote.
Come faccio? Mi fate un esempio (anche per 1 input solo)?

Grazie.
Max!


<form action="<%=MM_editAction%>" method="post" name="form1" onSubmit="MM_validateForm('Nome','','R','Cognome','','R','Username','','R','Passw','','R','email','','NisEmail');return document.MM_returnValue">
<table align="center">
<tr valign="baseline">
<td nowrap align="right">Nome:</td>
<td>
<input name="Nome" type="text" value="" size="20" maxlength="20">
</td>
</tr>
<tr valign="baseline">
<td nowrap align="right">Cognome:</td>
<td>
<input name="Cognome" type="text" value="" size="20" maxlength="20">
</td>
</tr>
<tr valign="baseline">
<td nowrap align="right">Username:</td>
<td>
<input name="Username" type="text" value="" size="20" maxlength="20">
</td>
</tr>
<tr valign="baseline">
<td nowrap align="right">Passw:</td>
<td>
<input name="Passw" type="text" value="" size="20" maxlength="20">
</td>
</tr>
<tr valign="baseline">
<td nowrap align="right">Email:</td>
<td>
<input name="email" type="text" size="30" maxlength="30">
</td>
</tr>
<tr valign="baseline">
<td nowrap align="right">&nbsp;</td>
<td>
<input type="submit" value="Inserisci Utente">
</td>
</tr>
</table>
<input type="hidden" name="MM_insert" value="form1">
</form>
 

lukeonweb

Utente Attivo
5 Mar 2003
5.175
13
38
45
Napoli
www.lucaruggiero.it
Ti faccio un esempio

<!-- test.html -->

<form method="post" action="test.asp">
<input type="text" name="stringa">
<input type="submit" value="OK">
</form>

<!-- test.asp -->

<%@LANGUAGE = VBScript%>
<%
Dim stringa
stringa = Request.Form("stringa")
If Len(Trim(stringa)) = 0 Then
Response.Write "Inserisci un testo"
Else
Response.Write "Hai scritto " & stringa
End If
%>
 

Max

Nuovo Utente
13 Set 2004
20
0
0
Ciao luke. Grazie della risposta.
Si, più o meno è quello che volevo.
Però a me serve una funzione, presente nella stessa pagina, che controlli tutti gli input type della form, e se questi input sono vuoti, ci inserisce in automatico un valore di default.
Come inserisco questo valore di default in un input text?

Grazie
Max
 

lukeonweb

Utente Attivo
5 Mar 2003
5.175
13
38
45
Napoli
www.lucaruggiero.it
Non l'ho testato...

<%@LANGUAGE = VBScript%>
<%
Option Explicit
On Error Resume Next
Dim modulo
modulo = Request.QueryString("modulo")
Dim stringa
stringa = Request.Form("stringa")
If modulo = "OK" Then
If Len(Trim(stringa)) = 0 Then
stringa = "Inserisci un testo"
Else
stringa = "Hai scritto " & stringa
End If
End If
%>

<form method="post" action="test.asp?modulo=OK">
<input type="text" name="stringa" value="<%=stringa%>">
<input type="submit" value="OK">
</form>

-----

Fammi sapere ;)
 

lukeonweb

Utente Attivo
5 Mar 2003
5.175
13
38
45
Napoli
www.lucaruggiero.it
Ciao Davide, sono daccordo al 50% perchè ci assicuro che ci sono molti rompibiiiiip che si prendono la briga di scaricare il form in locale, by-passare il controllo Javascript ed inserire dati a cavolo, tanto per dar fastidio al prossimo! Questo col controllo lato server non avviene.

D'altra parte fare (anche) il controllo lato client evita i tempi di attesa e di risposta del server, dato che il pacchetto di dati non gli viene inviato finchè il controllo non è stato esaudito.

Io sono per entrambi i controlli! Come dice il mio caro compaesano Totò

LA PRUDENZIA NON E' MAI TROPPO

:)
 

lukeonweb

Utente Attivo
5 Mar 2003
5.175
13
38
45
Napoli
www.lucaruggiero.it
Certo!

L'action della form è sempre in chiaro nel codice HTML, quindi basta copiare il form, sostituire il button con un submit e la frittata è fatta!

E ti dirò di più: username e password devono sempre essere verificate da un'espressione regolare che consente la scelta di soli caratteri alfanumerici, sia in fase di registrazione che di login, altrimenti ti fanno anche una bella SQL Injection e la frittata si brucia addirittura!

Nella sezione ASP / Tutorial di MR Webmaster trovi unmio articoletto che spiega come.

Ciao ;)
 

Max

Nuovo Utente
13 Set 2004
20
0
0
Salve! Mi fa piacere che la discussione sta evolvendo... :fonzie:
Allora...io farei anche una funzione in Javascript o in VBScript, però il Dreamweaver ne ha creata già una sua, che mi è difficile modificare.

Ecco il codice:

function MM_validateForm() { //v4.0
var i,p,q,nm,test,num,min,max,errors='',args
=MM_validateForm.arguments;
for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args);
if (val) { nm=val.name; if ((val=val.value)!="") {
if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain an e-mail address.\n';
} else if (test!='R') { num = parseFloat(val);
if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';
if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
min=test.substring(8,p); max=test.substring(p+1);
if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
} } } else if (test.charAt(0) == 'R') errors += '- '+nm+' is required.\n'; }
} if (errors) alert('The following error(s) occurred:\n'+errors);
document.MM_returnValue = (errors == '');

Questa funziona l'ha creata automaticamente il Dreamweaver MX.
Ora, "onSubmit" del form richiama questa funzione che già convalida sommariamente gli input text.
Ora, come la modifico? Oppure, posso anche creare un'altra funzione, ma come la richiamo sempre da "onSubmit" se questo richiama già la funzione di Dreamweaver?

Grazie!
Max!
 

Max

Nuovo Utente
13 Set 2004
20
0
0
lukeonweb ha scritto:
sostituendo all'onsubmit la funzione di dreamweaver con la tua... prova e facci sapere ;)

Ciao!
Io non voglio cancellare la funzione che ha creato Dreamweaver, ma vorrei aggiungere qualche linea di codice a quella stessa funzione. Oppure vorrei crearne una nuova, ma richiamarle tutte e due. E' possibile richiamarle entrambe da "onSubmit"?

Ciao
Max!
 

Max

Nuovo Utente
13 Set 2004
20
0
0
Perchè la prima fatta da Dreamweaver fa un primo controllo, poi la mia farà i controlli che non fà la prima!

Come si richiamano entrambe in "OnSubmit"?

Grazie
Max!
 
Discussioni simili
Autore Titolo Forum Risposte Data
M Come validare textarea con jquery jQuery 0
MarcoGrazia [PHP] [regex] Validare un url PHP 2
MarcoGrazia jquery validate, necessità di validare almeno un elemento select su due jQuery 1
D [Javascript] Validare dati in un form prima di spedirlo Javascript 1
O [HTML] Validare Form CMS (Content Management System) 3
napuleone [Javascript] validare lo spazio con js Javascript 7
F [PHP] Validare form prenotazione appuntamento tattoo con upload image PHP 0
M Validare alcuni campi di un form PHP 6
MarcoGrazia [regex] validare un textbox con solo caratteri alfabetici. Javascript 6
borgo italia validare un indirizzo email Snippet PHP 0
M Domande su validare i dati inseriti dagli utenti con jQuery e PHP Javascript 1
Shyson Validare mail in varie parti Javascript 2
Athene Validare un indirizzo email PHP 2
borgo italia validare url PHP 4
W Validare Form PHP 1
WpStyle validare attributo "value" HTML e CSS 7
C aiuto per validare form Javascript 3
jan267 Validare un form Javascript 2
S validare select da iframe a altri iframe Javascript 0
G Come validare in w3c il carrello di paypal? E-Commerce 14
M Validare Codice con W3C Xhtml 1.0 Strict HTML e CSS 8
B Validare Forms Javascript 0
G Validare e-mail Posta Elettronica 2
F validare una stringa... PHP 1
E non riesco a validare la pagina HTML e CSS 1
G Input checkbox in CSS HTML e CSS 0
L Ripetere Campi disabilitando input in riferimento ad un valore della select jQuery 0
otto9due Input text: accetta solo numeri e non può essere vuoto. Javascript 9
M Come recuperare molteplici input form PHP 1
F Lettura "input number" dinamico PHP 4
B form gestione input PHP 2
M Creare un campo input select quantità di un numero intero prelevato dal db PHP 3
F Leggere e aggiornare dati di campi <input text> su file di test PHP 0
R Nome input testo+variabile PHP 1
L input (rilevare cambio dati) PHP 3
S riflettere valore di campo input range in live Javascript 0
L input dati con inser into select ? PHP 4
M Compilazione automatica campi in input stessa pagina PHP 0
A attributo "min" per input gestione date PHP 8
F Steps campo input field Javascript 1
C input in sostituzione della select PHP 2
C [RISOLTO]Inserimento variabile php in input html PHP 20
L input (controllo se è stato modificato o no). PHP 1
W Modificare il Type di un Input box in javascript ovunque si trovi Javascript 0
S [PHP] Recupero nome immagine da Form con input file PHP 3
T [PHP] Autocompilazione input multiple da una select PHP 1
L [Javascript] input variabili di scrittura con canvas Javascript 2
MarkRed Come indicare, in una maschera, il primo controllo d'input, tipo "SetFocus" jQuery 9
L [Javascript] Select option in campi input Javascript 4
elpirata [RISOLTO][Javascript] Datapicker e autocompletamento campo input Javascript 2

Discussioni simili