Foros del Web

Foros del Web (http://www.forosdelweb.com/)
-   Bases de Datos General (http://www.forosdelweb.com/f21/)
-   -   Dudas con busqueda por décadas de una base de datos de Access (http://www.forosdelweb.com/f21/dudas-con-busqueda-por-decadas-base-datos-access-605418/)

haga41 13/07/2008 05:16

Dudas con busqueda por décadas de una base de datos de Access
 
Hola a todos,

Estoy creando una web que contiene una base de datos de películas y me gustaría hacer una opción que permitiese la búsqueda por décadas. La web está hecha en ASP y el código que he puesto en la página de la plantilla para el buscador es este.

<form id="form7" name="form7" method="post" action="buscardecada.asp">
<select name="decadas" id="decadas">
<option value="60" selected="selected">60</option>
<option value="70">70</option>
<option value="80">80</option>
<option value="90">90</option>
<option value="00">00</option>
</select>
<input name="Button" type="button" id="Button" value="Buscar por d&eacute;cada" />
</form>

En la página buscarpordecada.asp tengo puesto el siguiente código:

<%
decada=request("decadas")

if decada = "60" then
sql = "Select * from PELICULAS where Anio> 1959 AND Anio <1970"

tabla.open sql,conexion
if tabla.eof then
%>
No se han encontrado resultados
<% else
while not tabla.eof
%>
<table width="426" border="0" align="center">
<tr>
<td width="167">&nbsp;</td>
<td width="243" colspan="2">&nbsp;</td>
</tr>
<tr>
<td><b>Titulo:</b> <%=tabla.fields("Titulo")%></td>
<td><a href="detalle.asp?id=<%=tabla.fields("id")%>" title="Detalle" target="_blank"><img src="caratulas/<%=tabla.fields("foto")%>" width="25%" height="25%" /></a><a href="detalle.asp?id=<%=tabla.fields("id")%>" title="Detalle" target="_blank"></a></td>
</tr>
<% tabla.movenext%>
</table>
<%wend%>
<% end if %>

Supongo que para seleccionar las películas por década quizá sería más rápido y fácil de buscar así:
sql = "Select * from PELICULAS where Anio like '" &196*& "%'"

Si me pudieráis ayudar a encontrar los fallos que tengo o la manera de arreglarlo os lo agradecería mucho.

Iom 13/07/2008 06:23

Respuesta: Dudas con busqueda por décadas de una base de datos de Access
 
Te recomiendo mejor que vallas viendo posibiliades para que cambies a mysql es un buen manejador de BD y facil de usar y hay muchos datos y ejemplos disponibles en internet.!...

Yo no soy tan experto aun pero tal vez te de una idea que te pueda ayudar!
Yo usaria la misma base de datos ¡Pelicula! Y colocaria una tabla por decada. Ejemplo mi BD “Pelicula” CONTIENE las tablas “70” “80” ”90”…… y asi sigue ¡ luego realizaria la busqueda directamente con un CASE según sea la opcion elegida en tu pagina. Y asi te traeria directamente las peliculas selecionadas en tu por tu <select name=”decadas” id=”decadas”>
Luego realizaria la conexión según sea el select seleccionado.
¡ Pero sigo insitiendo que lo harias mucho mejor y mas facil en mysql !

jurena 13/07/2008 07:28

Respuesta: Dudas con busqueda por décadas de una base de datos de Access
 
haga41,

Tu idea no es mala, pero para las consultas de ese rango debes utilizar BETWEEN... AND

la consulta SQL para la década de los 60 sería:

Select * from PELICULAS WHERE anio BETWEEN 1960 AND 1969

De todas formas, deberías decirnos la naturaleza de ese campo anio.

haga41 13/07/2008 10:04

Respuesta: Dudas con busqueda por décadas de una base de datos de Access
 
Gracias a ambos por contestar tan rápido.

Iom,

Tengo intención de ir pasandome a MySql pero de momento he tenido problemas en algunas webs gratuitas en las que he puesto bases de datos en MySql, webs que te permitian usar MySql con algunas restricciones y además esta base de datos es bastante grande así que pasarla entera a MySql me llevaría bastante tiempo, quizás en el futuro lo haga y lo de poner un campo década puede ser una buena solución.

jurena,

Gracias por el consejo, he conseguido que funcione con tu código pensaba que con loe de >< servía no tenía ni idea de lo de BETWEEN y AND. ¿Sabéis de alguna página de hosting gratuito que deje subir bases de datos en MySql que funcione más o menos bien?


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

Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.