25 messaggi dal 18 marzo 2001
Ciao a tutti vorrei esporvi un piccolo problemino:
Vorrei dare ai visitatori del mio sito la possibilità di registrarsi ( un piccolo guestbook ) e per farlo ho usato un db Access
nel quale ho costruito una tabella con i seguenti campi : nome , cognome , e-mail , login(Scelta dall'utente) e password (idem)
quindi attaverso un form ho dato la posibilità di inserire tali dati.la pagina ASP che gestisce la connessione è questa(cito il codice dove risiedono gli script):
<%
FUNCTION fixQuotes ( theString )
fixQuotes = REPLACE ( theString, "'" , "''" )
END FUNCTION
' Rileva le variabili del form
addUser = TRIM (Request("addUser"))

nome = TRIM (Request("nome"))
cognome = TRIM (Request("cognome"))
email = TRIM (Request("email"))
userid = TRIM (Request("userid"))
password = TRIM (Request("password"))

IF nome = "" THEN
nome ="?????"
END IF
IF cognome = "" THEN
cognome = "?????"
END IF
IF email = "" THEN
email = "?????"
END IF
IF userid = "" THEN
userid = "?????"
END IF
IF password = "" THEN
password = "?????"
END IF


Set conn = Server.CreateObject("ADODB.Connection")
conn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & server.MapPath("/mdb-database/utenti.mdb")
%>
'questo inserisce i dati nel form
<%
IF addUser <> "" THEN

sqlString = "INSERT INTO utenti " &_
"(nome , cognome , e_mail , userid , " &_
"password ) VALUES (" &_
" '" & fixQuotes ( nome ) & "' , " &_
cognome & " , " &_
" '" & fixQuotes ( email ) & "' , " &_
" '" & fixQuotes ( userid ) & "' , " &_
password & " )"

Con.Execute sqlString
%> .
In fase di compilazione mi restituisce un errore:
Object required :"
/utenti.asp line54
ma la linea 54 è questa
Con.Execute sqlString .
potreste gentilmente aiutarmi a capire dove sbaglio???
Grazie
Saluti


Roberto Polimanti

Roberto Polimanti
3 messaggi dal 27 marzo 2001

Non mi dire che è solo perchè
manca una n !
O al limite dichiari in precedenza l'oggetto connessione con una n sola, l'importante che poi (in dichiarazione ed in esecuzione abbia lo stesso nome "PRECISO".

dich.= Set conn = Server.CreateObject
esec.= conn.Execute sqlString


Spero di esserti stato di aiuto e soprattutto di non aver detto castronerie.
Alex.
25 messaggi dal 18 marzo 2001
Grazie per la dritta o bisogno di un paio di occhiali.
Ok o apportato la correzione ora pero' l'errore è diventato questo:
Microsoft OLE DB Provider for ODBC Drivers error '80040e10'

[Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1.

/utenti.asp, line 54
la linea è sempre la stessa
conn.Execute sqlString.
Ma non capisco!!

Ciao Grazie ancora!!



Roberto Polimanti

Roberto Polimanti
3 messaggi dal 27 marzo 2001
C'è un problema coi parametri della query, oppure i nomi dei campi della query non corrispondono a quelli del database; purtroppo è un errore con molteplici cause.
Alex.

P.S. anche la query mi sembra avere qualche " di troppo, ricontrollala bene, oppure semplificala, o magari spezzettala, un campo alla volta riga per riga così il motore ti restituirà di volta in volta il numero della riga con l'incongruenza.
25 messaggi dal 18 marzo 2001
Infatti.....
L'errore stava proprio nella striga della
query:
avevo impostato il 'valore cognome' in numerico.....invece è letterale.
Comunque grazie ancora per l'aiuto probabilmente se non me l'avessi fatto notare
non ci avrei mai guardato.
Alla prossima
Saluti

Roberto Polimanti

Roberto Polimanti

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.