Foros del Web » Programando para Internet » PHP »

Consulta Filtrada en php. con el and..

Estas en el tema de Consulta Filtrada en php. con el and.. en el foro de PHP en Foros del Web. Hola AMIGOS buenas tengo el siguiente problema que tengo es quiero desarrollar una consulta filtrado de busca de autos como la de la siguiente pagina ...
  #1 (permalink)  
Antiguo 25/02/2011, 09:38
Avatar de vbonive  
Fecha de Ingreso: septiembre-2010
Mensajes: 86
Antigüedad: 13 años, 7 meses
Puntos: 0
Consulta Filtrada en php. con el and..

Hola AMIGOS buenas tengo el siguiente problema que tengo es quiero desarrollar una consulta filtrado de busca de autos como la de la siguiente pagina www.tucarro.com.ve en la parte de encuentra tu carro.

Tengo los campos necesario
Marco
Modelo
Año
Precio
Ubicación

Elabore este desarrollo:

Código PHP:
<?php
$con
=mysql_connect("xxxxxxxxx","xxxxxx","xxxx");
if (
$con)
{
$sql="select * from a5784110_auto.carros where marca='".$marca."' and (modelo='".$modelo."' or ano='".$ano."' or codigo='".$cod."') ORDER BY (codigo) ASC";
  
$result=mysql_query($sql,$con);
   if (
$result)
   {
      
$filas=mysql_num_rows($result);
      if (
$filas>0)
      {
      
?>
Pero solo me consulta de marca a lo demás campos pero no como consulta como la que quiero que es como la pagina de www.tucarro.com.ve en la parte de encuentra tu carro.

Saludos a la espera de su pronta respuesta...!

Última edición por vbonive; 25/02/2011 a las 11:05
  #2 (permalink)  
Antiguo 25/02/2011, 11:31
Avatar de AdrianSeg  
Fecha de Ingreso: enero-2010
Mensajes: 595
Antigüedad: 14 años, 2 meses
Puntos: 14
Respuesta: Consulta Filtrada en php. con el and..

No me he enterado de nada.
  #3 (permalink)  
Antiguo 25/02/2011, 11:57
Avatar de vbonive  
Fecha de Ingreso: septiembre-2010
Mensajes: 86
Antigüedad: 13 años, 7 meses
Puntos: 0
Respuesta: Consulta Filtrada en php. con el and..

Como asi mi pana no entiendo?
  #4 (permalink)  
Antiguo 28/02/2011, 14:11
Avatar de vbonive  
Fecha de Ingreso: septiembre-2010
Mensajes: 86
Antigüedad: 13 años, 7 meses
Puntos: 0
Respuesta: Consulta Filtrada en php. con el and..

Hola tengo la consulto solo que cunado quiero solo consultar un solo campo no me funciona.. por que?

$sql="select * from a5784110_auto.carros where marca LIKE '%$marca%' AND modelo LIKE '%$modelo%' AND ano LIKE '%$año%' AND codigo LIKE '%$codigo%'";
$result=mysql_query($sql,$con);
if ($result)
  #5 (permalink)  
Antiguo 28/02/2011, 14:17
Avatar de almagropaco_  
Fecha de Ingreso: marzo-2008
Ubicación: Mar del Plata
Mensajes: 854
Antigüedad: 16 años, 1 mes
Puntos: 25
Respuesta: Consulta Filtrada en php. con el and..

"a5784110_auto.carros" Asi se llama la tabla? MM. ese nombre para mi debe ser el nombre de la Base de Datos, te estas equivocando. Y si pones * no seleccionas un campo.. Estas bastante equivocado me parece. Podrias explicarte bien?
  #6 (permalink)  
Antiguo 28/02/2011, 14:23
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 14 años, 9 meses
Puntos: 641
Respuesta: Consulta Filtrada en php. con el and..

Cita:
"a5784110_auto.carros" Asi se llama la tabla?


creo que esto a5784110_auto.carros es por un lado

a5784110_auto = base de datos
. = simbolo de concatenacion
carros = tabla

¿que paso mi paco?

asi se debe escribir una consulta.

Por otro lado seguro que no sale nada cuando falta un campo

por que le estas diciendo que te de los resultados que se parezcan (LIKE) a nada o sea cero, out, estas fuera, si un campo tiene algun dato resultara que esto:

tren == ""; es FALSE
  #7 (permalink)  
Antiguo 28/02/2011, 15:26
Avatar de vbonive  
Fecha de Ingreso: septiembre-2010
Mensajes: 86
Antigüedad: 13 años, 7 meses
Puntos: 0
Respuesta: Consulta Filtrada en php. con el and..

no amigo esa es la bd la tabla se llama carro..! garcias por su ayuda..
osea el like es eso o nada como podria ser eso o lo que sea. tal cual en tucarro.com puedes hacer una consulta avanzado, y tambien puedes consultar solo un solo campo..! por ejemplo solo las marcas chevrolet. como seria la consulta gracias..
  #8 (permalink)  
Antiguo 28/02/2011, 15:54
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 14 años, 9 meses
Puntos: 641
Respuesta: Consulta Filtrada en php. con el and..

la tabla se llama carros, si, eso es lo que dije ¬¬

y pues ya te di todo caramba, si tu haces una consulta utilizando un LIKE y le dices

Código MySQL:
Ver original
  1. SELECT * FROM carros WHERE marca LIKE '%ford%' AND modelo LIKE '';

¿que crees que pase?

que te buscará en modelo lo que contenga nada o sea '' ningun valor, pero como todos los carros tienen modelo y además son varios LIKE no sale ningun valor,

¿entonces como buscamos?

pues que en el pimer termino marca LIKE ford y en los demás si estan vacios que contenga cualquier valor no importa si esta vacio, o si tiene cualquier cosa.

para buscar algo asi se usa el comodin %

entonces dandote toda esa info, ¿como quedaria la consulta?
  #9 (permalink)  
Antiguo 01/03/2011, 06:46
Avatar de vbonive  
Fecha de Ingreso: septiembre-2010
Mensajes: 86
Antigüedad: 13 años, 7 meses
Puntos: 0
Respuesta: Consulta Filtrada en php. con el and..

Hola amigo muy buena la esplicacion y si dejo el espacio vacio en modelo a la hora de buscar marca y modelo tambien me la buscaria? no se como quedaria la consulta..--¡?

Última edición por vbonive; 01/03/2011 a las 08:52
  #10 (permalink)  
Antiguo 01/03/2011, 09:09
Avatar de memoadian
Colaborador
 
Fecha de Ingreso: junio-2009
Ubicación: <?php echo 'México'?>
Mensajes: 3.696
Antigüedad: 14 años, 9 meses
Puntos: 641
Respuesta: Consulta Filtrada en php. con el and..

que barbaro

SELECT * FROM WHERE marca LIKE ford AND modelo LIKE '%' AND color LIKE '%'...

el % sirve para que te devuelva cualquier cosa

o sea que la marca sea ford y el modelo y color tengan lo que sea inclusive si no tienen nada,

ahora arreglatelas para que si no han marcado en la consulta modelo y color por ejemplo, el valor por defecto sea '%'.

Etiquetas: Ninguno
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 08:49.