Saludos a todos, necesito de su valiosa ayuda ya que esto me urge un poco,
resulta que tengo en una BD SQL 2 tablas, una de usuarios y otra para
resultados.
La primera ASP que tengo me captura el ID del usuario y lo paso a una
segunda ASP la cuál debe verificar primero si se encuentra el ID en la
tabla Usuarios, y luego verificar si ha grabado algun resultado en la otra
tabla, si es así enviar un mensaje que ya ingresó anteriormente. Si no
existe en Resultados enviarlo a la ASP del cuestionario y si no existe en
ninguna enviar mensaje diciendo que no existe el ID.
Estoy utilizando un ODBC para conectar a la BD pero cuando intento validar
el ID me sale el mensaje de que no existe el ID en la BD y es porque está
validando las dos.
Les adjunto el código para que me den una ayuda a ver cuál es el problema,
lo cual les agradecería mucho.
El código es el siguiente:
<html>
<td width="30%"><img src="img/Logo_MH.jpg" width="136" height="122"> </td>
<br>
<br>
<br>
</html>
<%
Dim cedula, oConn, RS, Id
'Primero nos fijamos si ambos campos fueron completados.
'Si no se cumple, redireccionamos a validar.asp
If Request.Form("cedula") = "" then
Response.Redirect "validar.asp"
Else
'Guardamos los datos del Form en variables y evitamos la comilla simple
cedula = Trim(Request.Form("cedula"))
cedula = Replace(cedula,"'","''")
Id=cedula
'Conexion por ODBC
oConn.Open "DSN=control;UID=XXXX;PWD=XXXX"
'Seleccionamos de la tabla solo los registros que concuerden con el
usuario del Form.
sql = "SELECT * FROM TUsuarios U, Tresultadosweb W WHERE U.cedula = "&
cedula &" or W.cedula= "& cedula &""
Set RS = Server.CreateObject ("ADODB.RecordSet")
RS.Open sql, oConn
'Si el valor EOF (fin de la tabla elegida) es verdadero, no existe el
usuario.
If (RS.EOF = true) then
Response.Write "Esta ID no existe en nuestra base de datos, favor
contactar al personal técnico de la comisión"
ElseIf RS.Fields("cedula") = cedula then 'Si el campo de la tabla es igual
a nuestra variable, estas logueado.
'Para redireccionar a la pagina del demo
response.Write "La cédula número: " & Cedula & "<br>"
response.Write "Ya proporcionó las respuestas anteriormente"
Else 'Otra cosa, seria cuando el password no es la que seleccionamos.
'Response.Write "Esta cédula no se encuentra registrada"
'Para redireccionar a la pagina del demo
Response.Redirect("cuestionario.asp?Id="&Server.URLEncode(cedula)&"")
End If
'Limpiamos y cerramos.
RS.Close
oConn.Close
Set RS = Nothing
Set oConn = Nothing
End If
%>
Leer las respuestas