47 messaggi dal 02 febbraio 2004
ho una casella di testo che inserisco il cod_utente se è giusto va alla pagina tabella_ordini se invece è sbagliato allora mi da una pagina che mi avverte.questo è il cod.
<%@LANGUAGE="VBSCRIPT"%>
<%option explicit%>
<!--#include file="adovbs.inc"-->
<%
dim objconn
dim objrs, strutente,SQL
set objconn=server.CreateObject("adodb.connection")
objconn.open="provider=Microsoft.Jet.Oledb.4.0; data source="&server.MapPath("mdb-database/ottica.mdb")
strutente = request.Form("COD_UTENTE")
if strutente="" then
objconn.close
set objconn = nothing
response.Redirect("attenzione_ottica.asp")
else
SQL = "select * from ORDINE where COD_UTENTE ='" & strutente & "'"
set objrs=server.CreateObject("adodb.recordset")
objrs.open SQL,objconn,3,3
end if
%>
ma se metto un valore sbagliato mi manda alla pagina "tabella_ordini vuota.
non vorrei che per far riconoscere l'utente ho messo questo:<%=strutente%>mi da anche l'utente che non esiste negli ordini.
mi aiutate
261 messaggi dal 14 dicembre 2001
è un errore di logica: Tu gli hai detto che se il request di quel codice è vuoto allora ti reindirizza alla pagina di errore... e se invece è pieno ti resta li' e ti fa la query, ma non hai controllato se la query ti restituisce l'utente controllato sul db.... gli hai detto semplicemente di fare una query, e basta...

Dopo dovresti controllare se sul recordset è presente un record, in tal caso hai il tuo utente, in caso contrario devi reindirizzare un'altra volta alla pagina di errore

- Gabba Pietro -
47 messaggi dal 02 febbraio 2004
come lo scrivo se ti chiedo troppo
261 messaggi dal 14 dicembre 2001
<%
dim objconn
dim objrs, strutente,SQL
set objconn=server.CreateObject("adodb.connection")
objconn.open="provider=Microsoft.Jet.Oledb.4.0; data source="&server.MapPath("mdb-database/ottica.mdb")
strutente = request.Form("COD_UTENTE")

SQL = "select * from ORDINE where COD_UTENTE ='" & strutente & "'"
set objrs=server.CreateObject("adodb.recordset")
objrs.open SQL,objconn,3,3

if strutente = "" or objrs.eof then 'controllo se la query non ha trovato niente
'se non trova niente allora l'utente specificato non esiste... giusto?
objconn.close
set objconn = nothing
response.Redirect("attenzione_ottica.asp")
end if

'esegui pagina
%>

- Gabba Pietro -
47 messaggi dal 02 febbraio 2004
grazie sono riuscito a risolverlo da solo al posto di inserire la condizione dopo "" then l'ho inserito dopo la sql
ciao e grazie

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.