105 messaggi dal 25 dicembre 2004
HO fatto questo script per aggiungere dati nel db
<%
IF Session("Loggato") = False and Session("Username") = "" then
Response.Redirect "index.asp"
End IF
%>

<html>
<head>
<title>Afterward</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="../css/city.css" rel="stylesheet" type="text/css">
</head>

<body class="gior">
 <%
 password = Replace(Request.Form("password"), "'", "''")
 motto = Replace(Request.Form("motto"), "'", "''")
 life = Replace(Request.Form("life"), "'", "''")
 dati = Replace(Request.Form("dati"), "'", "''")
 avatar = Replace(Request.Form("avatar"), "'", "''")
fisico = Replace(Request.Form("fisico"), "'", "''")
 veicoli  = Replace(Request.Form("veicoli"), "'", "''")
 animali = Replace(Request.Form("animali"), "'", "''")
 IF password <> "" and motto <> "" and life <> "" and dati <> "" and avatar <> "" and fisico <> "" and veicoli <> "" and animali <> "" then
 
 url_DB = "driver={Microsoft Access Driver (*.mdb)};dbq="& server.MapPath("/mdb-database/afterward.mdb") 
Set Conn = Server.CreateObject("ADODB.Connection") 
conn.Open url_DB 
Set RecSet = Server.CreateObject("ADODB.Recordset")
SQL = "SELECT * FROM afterward where username = '" & session("username") & "' and password = '" & password & "' and motto = '" & motto & "' and life = '" & life & "' and avatar = '" & avatar & "' and fisico = '" & fisico & "' and veicoli = '" & veicoli & "' and animali = '" & animali & "'"
RecSet.Open Sql, conn, adOpenStatic, adLockOptimistic
If Not RecSet.Eof THEN
RecSet("password") = password
RecSet("motto") = motto
RecSet("life") = life
RecSet("dati") = dati
RecSet("avatar") = avatar
RecSet("fisico") =fisico
RecSet("veicoli") = veicoli
RecSet("animali") = animali
RecSet.Update
Esatti = True
Else
Esatti = False
End IF
RecSet.Close
Set RecSet= Nothing
conn.Close
Set conn = Nothing
If Esatti = True then
%>
Dati aggiornati
<%
else
%>
Dati nn corretti
<% 
End IF
Else
%>
Compila tutti i campi correttamente
<%
End IF
%>
</body>
</html>

L'errore è nella linea 31, praticamente la stringa di sql, nella sintassi dei nomi

l'errore che mi da è questo qua:

Tipo di errore:
ADODB.Recordset (0x800A0BB9)
Gli argomenti non sono di tipo valido, non sono compresi nell'intervallo consentito o sono in conflitto.
/documento/cambia.asp, line 31

Modificato da werwolfe il 14 ottobre 2005 11.09 -
141 messaggi dal 08 luglio 2004
La riga 31 è quella dell'esecuzione dell'sql?
Prova a cambiare l'= con il LIKE per le stringhe non numeriche.
Ciao, SD
105 messaggi dal 25 dicembre 2004
Ho sostituito alla riga 1, 3 e il modulo sembrerebbe funzionare ma adesso mi fa un altro problema, l'altra pagina che dovrebbe aggiungere i dati inviati dal form mi dice sempre dati non corretti, ho controllato i recordset sono esatti lo script è questo:

<%
IF Session("Loggato") = False and Session("Username") = "" then
Response.Redirect "index.asp"
End IF
%>

<html>
<head>
<title>Afterward</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="../css/city.css" rel="stylesheet" type="text/css">
</head>

<body class="gior">
 <%
 password = Replace(Request.Form("password"), "'", "''")
 motto = Replace(Request.Form("motto"), "'", "''")
 life = Replace(Request.Form("life"), "'", "''")
 dati = Replace(Request.Form("dati"), "'", "''")
 avatar = Replace(Request.Form("avatar"), "'", "''")
fisico = Replace(Request.Form("fisico"), "'", "''")
 veicoli  = Replace(Request.Form("veicoli"), "'", "''")
 animali = Replace(Request.Form("animali"), "'", "''")
 IF password <> "" and motto <> "" and life <> "" and dati <> "" and avatar <> "" and fisico <> "" and veicoli <> "" and animali <> "" then
 
 url_DB = "driver={Microsoft Access Driver (*.mdb)};dbq="& server.MapPath("/mdb-database/afterward.mdb") 
Set Conn = Server.CreateObject("ADODB.Connection") 
conn.Open url_DB 
Set RecSet = Server.CreateObject("ADODB.Recordset")
SQL = "SELECT * FROM afterward where username = '" & session("username") & "' and password = '" & password & "' and motto = '" & motto & "' and life = '" & life & "' and avatar = '" & avatar & "' and fisico = '" & fisico & "' and veicoli = '" & veicoli & "' and animali = '" & animali & "'"
RecSet.Open Sql, conn, 1, 3
If Not RecSet.Eof THEN
RecSet("password") = password
RecSet("motto") = motto
RecSet("life") = life
RecSet("dati") = dati
RecSet("avatar") = avatar
RecSet("fisico") =fisico
RecSet("veicoli") = veicoli
RecSet("animali") = animali
RecSet.Update
Esatti = True
Else
Esatti = False
End IF
RecSet.Close
Set RecSet= Nothing
conn.Close
Set conn = Nothing
If Esatti = True then
%>
Dati aggiornati
<%
else
%>
Dati nn corretti
<% 
End IF
Else
%>
Compila tutti i campi correttamente
<%
End IF
%>
</body>
</html>

Modificato da werwolfe il 15 ottobre 2005 11.15 -
141 messaggi dal 08 luglio 2004
Werwolfe ha scritto:
Ho sostituito alla riga 1, 3

Intanto, ciao :-)
Cosa hai sostituito ed in quale riga??... non mi è chiaro
Ti riferisci forse a adOpenDynamic e adLockPessimistic?

e il modulo sembrerebbe funzionare ma adesso mi fa un altro problema, l'altra pagina che dovrebbe aggiungere i dati inviati dal form mi dice sempre dati non corretti, ho controllato i recordset sono esatti lo script è questo:

Hai provato a sostituire gli 0 con i LIKE dove sono non munerici?
Il problema di fondo sembra questo...

<%
IF Session("Loggato") = False and Session("Username") = "" then
Response.Redirect "index.asp"
End IF
%>

<html>
<head>
<title>Afterward</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="../css/city.css" rel="stylesheet" type="text/css">
</head>

<body class="gior">
 <%
 password = Replace(Request.Form("password"), "'", "''")
 motto = Replace(Request.Form("motto"), "'", "''")
 life = Replace(Request.Form("life"), "'", "''")
 dati = Replace(Request.Form("dati"), "'", "''")
 avatar = Replace(Request.Form("avatar"), "'", "''")
fisico = Replace(Request.Form("fisico"), "'", "''")
 veicoli  = Replace(Request.Form("veicoli"), "'", "''")
 animali = Replace(Request.Form("animali"), "'", "''")
 IF password <> "" and motto <> "" and life <> "" and dati <> "" and avatar <> "" and fisico <> "" and veicoli <> "" and animali <> "" then
 
 url_DB = "driver={Microsoft Access Driver (*.mdb)};dbq="& server.MapPath("/mdb-database/afterward.mdb") 
Set Conn = Server.CreateObject("ADODB.Connection") 
conn.Open url_DB 
Set RecSet = Server.CreateObject("ADODB.Recordset")
SQL = "SELECT * FROM afterward where username = '" & session("username") & "' and password = '" & password & "' and motto = '" & motto & "' and life = '" & life & "' and avatar = '" & avatar & "' and fisico = '" & fisico & "' and veicoli = '" & veicoli & "' and animali = '" & animali & "'"
RecSet.Open Sql, conn, 1, 3
If Not RecSet.Eof THEN
RecSet("password") = password
RecSet("motto") = motto
RecSet("life") = life
RecSet("dati") = dati
RecSet("avatar") = avatar
RecSet("fisico") =fisico
RecSet("veicoli") = veicoli
RecSet("animali") = animali
RecSet.Update
Esatti = True
Else
Esatti = False
End IF
RecSet.Close
Set RecSet= Nothing
conn.Close
Set conn = Nothing
If Esatti = True then
%>
Dati aggiornati
<%
else
%>
Dati nn corretti
<% 
End IF
Else
%>
Compila tutti i campi correttamente
<%
End IF
%>
</body>
</html>

Modificato da werwolfe il 15 ottobre 2005 11.15 -


Ciao, sd
105 messaggi dal 25 dicembre 2004
E che non ho capito dove mettere like , praticamente nessun record è numerico sono tutti testo o memo, dove lo devo mettere like?
grazie
:) e scusa se non hos critto ciao :D
141 messaggi dal 08 luglio 2004
Figurati... :-)
Prova così

SQL = "SELECT * FROM afterward where username LIKE '" & session("username") & "' and password LIKE '" & password & "' and motto LIKE '" & motto & "' and life LIKE '" & life & "' and avatar LIKE '" & avatar & "' and fisico LIKE '" & fisico & "' and veicoli LIKE '" & veicoli & "' and animali LIKE '" & animali & "'"

e postami l'errore (se te lo da)

Ps: hai x caso delle checkbox nel modulo?
105 messaggi dal 25 dicembre 2004
 adesso lo provo, no nel form ho solo campi memo e testo, anche se dopo dovrà inserire un campo select per scegliere tre opzioni.
^^ vedo se funge grazie sei stato molto paziente
105 messaggi dal 25 dicembre 2004

nada mi dice sempre dati non corretti , non mi da nessun errore, solo dati non corretti,  eppure i recordset sono quelli , O.o, forse dovrei togliere else , che mi dice dati non corretti?

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.