ciao a tutti, vi avviso già da adesso che ho già letto tutto il manuale di asp del sito, riesco a fare svariate cose... avrei un problema di inserimento dati degli utenti. vi spiego: per mezzo di un form in una pagina html chiedo i dati agli utenti per essere contattati, il codice è:
mentre il codice che si occupa di inserire i dati nel database è il seguente:codice:<table height="573" border="4" align="center" cellpadding="4" cellspacing="4" bgcolor="#FFFFFF" style="border: Solid 1px #CCCCCC;"> <form method="post" action="iscrizione.asp"> <tr> <td height="571" valign="top"> Nome*: <input name="nome" type="text" class="txt" size="40"> Cognome*: <input name="cognome" type="text" class="txt" size="40"> Indirizzo: <input name="indirizzo" type="text" class="txt" size="40"> Città*: <input name="citta" type="text" class="txt" size="40"> Telefono*: <input name="telefono" type="text" class="txt" size="40"> Email: <input name="email" type="text" class="txt" size="40"> Messaggio: <textarea name="messaggio" cols="40" rows="10"></textarea> </p> <p align="center"><span class="Stile5">*campi obbligatori.</span> </p> <p align="center"> <input type="submit" value=" Vai "> </p></td> </tr> </form> </table>
adesso arriva il bello... il codice sembra giusto, l'ho provato ma non inserisce i dati e in più non mi scrive nulla, dov'è che si blocca e fa l'effetto di rindondanza?codice:<%@LANGUAGE = JScript%> <% // Recupero i dati segnalati dell'utente, var nome = new String(Request.Form("nome")); var cognome = new String(Request.Form("cognome")); var indirizzo = new String(Request.Form("indirizzo")); var citta = new String(Request.Form("citta")); var telefono = new String(Request.Form("telefono")); var email = new String(Request.Form("email")); var messaggio = new String(Request.Form("messaggio")); // Espressione regolare per un indirizzo email var Controlla = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-]{2,})+\.)+([a-zA-Z0-9]{2,})+$/; // Imposto l'indirizzo IP del mittente var ip = Request.ServerVariables("REMOTE_ADDR"); // Imposto la data var oggi = new Date(); var data = oggi.getDate() + "/" + (oggi.getMonth() + 1) + "/" + oggi.getYear() + " alle ore " + oggi.getHours() + ":" + oggi.getMinutes(); // Apro la connessione al database var Cn = new ActiveXObject("ADODB.Connection"); var Sc = "driver={Microsoft Access Driver (*.mdb)};dbq=" + Server.MapPath("database.mdb"); Cn.Open(Sc); // Controllo la validità dei campi if ((nome == "") || (nome == "undefined")) { Response.Write("Richiesta non inviata: Inserisci il tuo nome."); Cn.Close(); Response.End; } if ((cognome == "") || (cognome == "undefined")){ Response.Write("Richiesta non inviata: Inserisci il tuo Cognome."); Cn.Close(); Response.End; } if ((citta == "") || (citta == "undefined")) { Response.Write("Richiesta non inviata: Inserisci la tua città di residenza."); Cn.Close(); Response.End; } if ((telefono == "") || (telefono == "undefined")) { Response.Write("Richiesta non inviata: Inserisci un recapito telefonico al quale contattarti."); Cn.Close(); Response.End; }} // Apro il recordset ed effettuo l'inserimento var Rs = new ActiveXObject("ADODB.Recordset"); Rs.Open("utenti",Cn,3,3); Rs.AddNew(); Rs("data") = data; Rs("ip") = ip; Rs("nome") = nome; Rs("cognome") = cognome; Rs("indirizzo") = indirizzo; Rs("citta") = citta; Rs("telefono") = telefono; Rs("email") = email; Rs("messaggio") = messaggio; Rs.Update(); Rs.Close(); Response.Write("Richiesta inviata con successo. Sarai contattato il prima possibile. Grazie e arrivederci."); } Cn.Close(); %>
Ah come avrete notato lo scheletro dello script è quella di luke newsletter ma l'ho modificato molto.
Grazie mille per l'aiuto in anticipo

Rispondi quotando
