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

paginacion con where

Estas en el tema de paginacion con where en el foro de ASP Clásico en Foros del Web. Hola vereis estoy haciendo una paginacion de resultados y me la hace bien pero cuando le pongo una condicion al SELECT la paginacion me da ...
  #1 (permalink)  
Antiguo 01/12/2004, 12:59
 
Fecha de Ingreso: octubre-2004
Mensajes: 230
Antigüedad: 19 años, 7 meses
Puntos: 0
paginacion con where

Hola vereis estoy haciendo una paginacion de resultados y me la hace bien pero cuando le pongo una condicion al SELECT la paginacion me da un error , este es el codigo
Código:
  <%xx=request.form("direccion")
                     if xx = "Atras" then 
                     session("pagina")=session("pagina")-1

                     if session("pagina")< 1 then 
                     session("pagina")=1 'evitamos el error por reload
                     end if

                     else 
                     if xx="Adelante" then 
                     session("pagina")=session("pagina")+1
                     else
                     session("pagina")=1 'primera pasada
                     end if 
                     end if
					  
					 f=Request.Form("Familia")
					 SQLtxt = "SELECT * FROM productos WHERE familia ="&f&""%>


                     <%set rs = CreateObject("ADODB.Recordset")
                      rs.CursorType = adOpenstatic %>
                     <%rs.Open SQLtxt, "DSN=bromur"
					 if  rs.EOF  then
					 %>
					  <script language="Javascript">
                     var pagina="escogerfami.asp";
                     location.href=pagina;
                     alert ("No hay ningun producto de esta familia!!")
                     </script>
					  <%ELSE
                      rs.pagesize=5

                     if session("pagina")>rs.pagecount then
                     session("pagina")=rs.pagecount 'evitamos el error de reload
                     end if%> 
                     <%rs.absolutepage=session("pagina")
                      inicio=1+(session("pagina")-1)*rs.pagesize
                      fin=inicio+9
                      if fin > rs.recordcount then
                      fin =rs.recordcount
                      end if
                      %>
                      <table border="0" width="100%" bgcolor="#C0C0C0">
                        <tr>
                           <td width="50%" align="center">Registros <font color="#FF0000"><%=inicio%> </font>
                            al <font color="#FF0000"><%=fin%></font> de un total de
                            <font color="#FF0000"><%=rs.recordcount%></font></td>
                              <td width="50%" align="center">Página <font color="#FF0000"><%=session("pagina")%>
                               </font> de <font color="#FF0000"><%=rs.pagecount%></font></td>
                            </tr>
                      </table>
<table border=0 bordercolor="#ff00ff" cellpading=0 cellspacing=0 width="100%" height="100%">
<tr align="center">
<td width="20" height="20" align="center">



<%
   Response.Buffer = True
   ' Connection String
   'Dim connStr
      'connStr = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & _
         'Server.MapPath("bromur.mdb")
   ' Recordset Object
   'Dim rs
      'Set rs = Server.CreateObject("ADODB.Recordset") 
      ' opening connection
      'rs.Open "select [id_product],[familia],[codigo],[foto],[nombre_fichero],[tamano_fichero],[tipo_fichero],[descripcion],[altura]," & _
         '"[diametro],[bombillas],[tipo],[potencia] from productos order by [id_product] asc", connStr, 3, 4
      If Not rs.EOF Then
	  
         'Response.Write "No. de registros : " & rs.RecordCount &", Tabla : Productos<br>"
		 Response.Write "<tr><td><u><b>Id</b></u>"
		 Response.Write "<td><u><b>Familia</b></u>"
		 Response.Write "<td><u><b>Codigo</b></u>"
		 Response.Write "<td><u><b>Foto</b></u>"
		 'Response.Write "<td><u><b>Nombre Archivo</b></u>"
		 'Response.Write "<td><u><b>Tamano Archivo</u>"
		 'Response.Write "<td><u><b>Tipo_Archivo</b></u>"
		 Response.Write "<td><u><b>Descripcion</b></u>"
		 Response.Write "<td><u><b>Altura</b></u>"
		 Response.Write "<td><u><b>Diametro</b></u>"
		 Response.Write "<td><u><b>NºBombillas</b></u>"
		 Response.Write "<td><u><b>Tipo</b></u>"
		 Response.Write "<td><u><b>Potencia</b></u>"
         Response.Write "</td></tr>"
  contador=0
Do While contador < rs.pagesize and NOT rs.EOF
            Response.Write "<tr><td>"
            Response.Write rs("id_product") & "</td><td>"
			Response.Write rs("familia") & "</td><td>"
			Response.Write rs("codigo") & "</td><td>"
            Response.Write "<img src=""mostrarfoto.asp?ID=" & rs("id_product") & """>"& "</td><td>"
			'Response.Write rs("nombre_fichero") & "</td><td>"
            'Response.Write rs("tamano_fichero") & "</td><td>"
            'Response.Write rs("tipo_fichero") & "</td><td>"
			Response.Write rs("descripcion") & "</td><td>"
            Response.Write rs("altura") & "</td><td>"
            Response.Write rs("diametro") & "</td><td>"
            Response.Write rs("bombillas") & "</td><td>"
			Response.Write rs("tipo") & "</td><td>"
            Response.Write rs("potencia")
            Response.Write "</td></tr>"
            rs.MoveNext
     
contador=contador+1
Loop

      Else
         Response.Write "No se encontraron archivos"
      End If     
%>
	</td>
</tr>
<tr><td colspan="10"><div align="center">
<center>

<!-- mostramos los botones de adelante y atras segun proceda -->

<table align="center" border="0" width="38%" height="5">
<tr><%if session("pagina")<> 1 then %>
<td width="50%" height="1" align="center">
<form method="POST" action="verproducts.asp">
<p><input type="submit" value="Atras" name="direccion"></p>
</form>
</td><%end if%>
<%if session("pagina")< rs.pagecount then%>
<td width="50%" height="1" align="center">
<form method="POST" name="verproducts.asp">
<p><input type="submit" value="Adelante" name="direccion"></p>
</form>
</td><%end if%>
</tr>
</table>
Como podria solucionarlo o donde podria ver un ejemplo de paginacion pero incluyendo un WHERE en la SELECT
Gracias
  #2 (permalink)  
Antiguo 01/12/2004, 19:03
Avatar de sjam7  
Fecha de Ingreso: diciembre-2001
Ubicación: Guadalajara, Mexico
Mensajes: 3.672
Antigüedad: 22 años, 5 meses
Puntos: 16
que error te da? y en que linea?
__________________
CreandoWebs.com
www.creandowebs.com
PLANTILLAS TEMPLATEMONSTER CON 10% DE DESCUENTO
  #3 (permalink)  
Antiguo 02/12/2004, 01:29
 
Fecha de Ingreso: octubre-2004
Mensajes: 230
Antigüedad: 19 años, 7 meses
Puntos: 0
El error que me da es el siguiente
Cita:
Error de sintaxis (falta operador) en la expresión de consulta 'familia='.
pero solo me da el error cuando le pongo el filtro de WHERE
Código:
f=Request.Form("Familia")					 
SQLtxt = "SELECT * FROM productos where familia="& f &""%>
  #4 (permalink)  
Antiguo 02/12/2004, 05:09
Avatar de Muzztein  
Fecha de Ingreso: agosto-2002
Ubicación: Hangar 18
Mensajes: 1.703
Antigüedad: 21 años, 9 meses
Puntos: 16
loco.

debuguea

asi

f=Request.Form("Familia")
SQLtxt = "SELECT * FROM productos where familia="& f &""
response.write sqltxt
response.end


ahi solito te vas a dar cuenta de tu error.
  #5 (permalink)  
Antiguo 05/12/2004, 20:31
Avatar de lexus  
Fecha de Ingreso: enero-2002
Ubicación: Cali - Colombia
Mensajes: 2.234
Antigüedad: 22 años, 5 meses
Puntos: 4
este mensaje esta repetido, pero ya te respondi en el otro que pusiste., no es necesario preguntar dos veces lo mismo..
__________________
Control de Visitantes, Control de Accesos, Minutas digitales, Manejo de Correspondencia
http://www.controldevisitantes.com
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




La zona horaria es GMT -6. Ahora son las 00:53.