Foros del Web » Programando para Internet » ASP Clásico »

Tengo un problema!!!!!

Estas en el tema de Tengo un problema!!!!! en el foro de ASP Clásico en Foros del Web. he hecho un enlace tipo archivo.asp?id=1 y me funciona lo que me pasa q me muestra todos los id's q contengan un "1", por ejemplo ...
  #1 (permalink)  
Antiguo 19/04/2004, 05:53
Avatar de deccweb  
Fecha de Ingreso: febrero-2003
Ubicación: Mataro
Mensajes: 365
Antigüedad: 22 años, 2 meses
Puntos: 0
Tengo un problema!!!!!

he hecho un enlace tipo archivo.asp?id=1 y me funciona lo que me pasa q me muestra todos los id's q contengan un "1", por ejemplo me muestra, el id=1, el id=10, 11,12,13,14...21...31...41...etc....

que tendria de canviar? el enlace o el archivo de respuesta?

aqui hos adjunto el archivo de respuesta

Código PHP:
<html><head></head><body>



<%

Dim oConnrsSQL
Dim PaginaActual        
' en qué pagina estamos
Dim PaginasTotales        ' 
cuántas páginas tenemos
Dim TamPagina            
' cuantos registros por pagina
Dim CuantosRegistros    ' 
la cuenta que os he mencionado

'MODIFICAR AQUI PARA CAMBIAR EL Nº DE REGISTRO POR PAGINA
TamPagina=15

'
Leemos qué página mostrarLa primera vez será la inicial
if Request.Querystring("pagina")="" then
    PaginaActual
=1
else
    
PaginaActual=CInt(Request.Querystring("pagina"))
end if

set oConn=Server.CreateObject("ADODB.Connection")
set rs=Server.CreateObject("ADODB.Recordset")

' Conexión por OLEDB
oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0; " & _
    "Data Source="&Server.MapPath("xxxx.mdb")&";"
SQL="Select * From inscripcio Where UCase(id) like '
%" & UCase(Request("id")) & "%'" 


Defino el tamaño de las páginas
rs
.PageSize=TamPagina
rs
.CacheSize=TamPagina

' Abro el recordset
rs.Open SQL, oConn, 1, 2

'
Cuento las páginas
PaginasTotales
=rs.PageCount

'Compruebo que la pagina actual está en el rango
if PaginaActual < 1 then 
    PaginaActual = 1
end if
if PaginaActual > PaginasTotales then
    PaginaActual = PaginasTotales
end if

'
Por si la consulta no devuelve registros!
if 
PaginasTotales=0 then

    Response
.Write("No se encontraron resultados.")

else

    
'Vamos a paginar
    rs.AbsolutePage=PaginaActual
    Response.Write("<font size=2 face=verdana>Página " & PaginaActual & " de " & PaginasTotales)
    Response.Write("<table border=1>")

    CuantosRegistros=0
    do while not rs.EOF and CuantosRegistros < TamPagina
        '
Pinto una línea de la tabla por cada registro
        Response
.Write("<tr><td>"&VbCrLf)
        
Response.Write("<font size=1>"&rs.Fields("nom")&" ")
        
Response.Write("</td><td><font size=1>"&rs.Fields("cognoms")&" ")
        
Response.Write("</td><td><font size=1>"&rs.Fields("any")&" ")
        
Response.Write("</td><td><font size=1>"&rs.Fields("sexe")&"")
        
Response.Write("</td><td><font size=1>"&rs.Fields("direc")&"")
        
Response.Write("</td><td><font size=1>"&rs.Fields("poblacio")&"")
        
Response.Write("</td><td><font size=1>"&rs.Fields("cp")&"")
        
Response.Write("</td><td><font size=1>"&rs.Fields("telefon")&"")
        
Response.Write("</td><td><font size=1>"&rs.Fields("email")&"")
        
Response.Write("</td><td><font size=1>"&rs.Fields("nivell")&"")
        
Response.Write("</td><td><font size=1>"&rs.Fields("sitlaboral")&"</td></tr>")
        
CuantosRegistros=CuantosRegistros+1
        rs
.MoveNext
    loop
    Response
.Write("</table>")

end if
rs.Close
oConn
.Close
set rs
=nothing
set oConn
=nothing

Muestro los enlaces
Response
.Write("<br><br>")
if 
PaginaActual 1 then
    Response
.Write("<A HREF=ins.asp?pagina="PaginaActual-1_
    
">Siguientes</A>   ")
end if
if 
PaginaActual PaginasTotales then
    Response
.Write("<A HREF=ins.asp?pagina=" PaginaActual+
    
">Anteriores</A>")
end if


%> 
__________________
Calle17.net

edgargranados.es
  #2 (permalink)  
Antiguo 19/04/2004, 08:30
Avatar de deccweb  
Fecha de Ingreso: febrero-2003
Ubicación: Mataro
Mensajes: 365
Antigüedad: 22 años, 2 meses
Puntos: 0
nadie sabe el porque me pasa esto? como lo puedo solucionar????'
__________________
Calle17.net

edgargranados.es
  #3 (permalink)  
Antiguo 19/04/2004, 08:40
 
Fecha de Ingreso: marzo-2004
Ubicación: San José, Costa Rica
Mensajes: 234
Antigüedad: 21 años, 1 mes
Puntos: 0
Saludos,

Tu problema está en el SQL, estás usando este:

SQL="Select * From inscripcio Where UCase(id) like '%" & UCase(Request("id")) & "%'"

Pero con el operador "like" estás especificando que cualquiera contenga el carácter determinado y además con los "%" adelante y atras especificas que el carácter puede aparecer en cualquier posición (1, 12454, 545451, 44144),

debes cambiarlo a

SQL="Select * From inscripcio Where UCase(id) =" & UCase(Request("id"))

  #4 (permalink)  
Antiguo 19/04/2004, 09:15
Avatar de deccweb  
Fecha de Ingreso: febrero-2003
Ubicación: Mataro
Mensajes: 365
Antigüedad: 22 años, 2 meses
Puntos: 0
ok! muchas gracias, ahora lo probare
__________________
Calle17.net

edgargranados.es
  #5 (permalink)  
Antiguo 19/04/2004, 14:50
Avatar de deccweb  
Fecha de Ingreso: febrero-2003
Ubicación: Mataro
Mensajes: 365
Antigüedad: 22 años, 2 meses
Puntos: 0
Muhas gracias JosephFley, me funciono correctamente como yo queria
__________________
Calle17.net

edgargranados.es
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 09:24.