Foros del Web » Programando para Internet » PHP »

Mini buscador

Estas en el tema de Mini buscador en el foro de PHP en Foros del Web. Hola amigos he creado un buscador por campos ya selecionados, que envia unos parametros para que presente los registros, por sexo, pais, o por provincia, ...
  #1 (permalink)  
Antiguo 07/10/2004, 12:02
Avatar de benti  
Fecha de Ingreso: octubre-2001
Ubicación: Benidorm
Mensajes: 413
Antigüedad: 16 años, 1 mes
Puntos: 0
Mini buscador

Hola amigos he creado un buscador por campos ya selecionados, que envia unos parametros para que presente los registros, por sexo, pais, o por provincia, pero no hace nada, como si no fuera.
El formulario lanza los parametro como POST
os pongo el codigo:
Código PHP:
if (isset($_POST['bot_buscar'])){ # muestra lo ke busco
    
$sql "SELECT id, nombre, texto, provincia1, nuevoNombre1, tel1, tel2, dis_apar, dis_hotel, dis_viaje, destaca FROM dr_anuncio WHERE genero="$_POST['genero'] . " AND pais="$_POST['pais']." AND provincia1="$_POST['provincia1']." ORDER BY fecha DESC"
    
$result mysql_query ($sql) or die (mysql_error());
    }else{ 
# muestra todo
    
$sql "SELECT id, nombre, texto, provincia1, nuevoNombre1, tel1, tel2, dis_apar, dis_hotel, dis_viaje, destaca FROM dr_anuncio WHERE act='1' AND genero='Chica' AND act='1' OR genero='Chico' AND act='1' OR genero='Transexual' AND act='1' ORDER BY fecha DESC"
    
$result mysql_query ($sql) or die (mysql_error());
    } 
El boton que uso del formulario se llama 'bot_buscar' y el formulario "busca"
Ya me decis algo
__________________
Seguro que ahora me sale mejor!
  #2 (permalink)  
Antiguo 07/10/2004, 12:09
Avatar de Genetix  
Fecha de Ingreso: febrero-2002
Ubicación: Lima - Perú
Mensajes: 1.600
Antigüedad: 15 años, 10 meses
Puntos: 43
Hola
prueba colocando comillas simples antes de las cimparaciones

$sql = "SELECT id, nombre, texto, provincia1, nuevoNombre1, tel1, tel2, dis_apar, dis_hotel, dis_viaje, destaca FROM dr_anuncio WHERE genero='". $_POST['genero']."' AND pais='". $_POST['pais']."' AND provincia1='". $_POST['provincia1']."' ORDER BY fecha DESC";

saludos
  #3 (permalink)  
Antiguo 07/10/2004, 17:08
Avatar de benti  
Fecha de Ingreso: octubre-2001
Ubicación: Benidorm
Mensajes: 413
Antigüedad: 16 años, 1 mes
Puntos: 0
Me faltaba solo un detalle el ! delante del isset, pero ahora tengo un problema
funcionando el isset no me va si no ha sido enviado el form, si no se ha enviado "bot_buscar" deveria mostrar el resultado $sql de abajo, pero no lo muestra, si envio el formulaio el de arriba lo coje perfectamente, si pongo solo el abajo funciona sin problema, ¿que no estoy viendo?, porke cunado no envio nada el $sql no funciona ¿?
Código PHP:
    if (! isset($_POST['bot_buscar'])){
        
$sql "SELECT id, nombre, texto, provincia1, nuevoNombre1, tel1, tel2, dis_apar, dis_hotel, dis_viaje, destaca FROM dr_anuncio WHERE act='1' AND genero='".$_POST['genero']."' AND pais='"$_POST['pais']."' AND provincia1='".$_POST['provincia1']."' ORDER BY fecha DESC"
        
$result mysql_query ($sql) or die (mysql_error());
    }else{
        
$sql "SELECT id, nombre, texto, provincia1, nuevoNombre1, tel1, tel2, dis_apar, dis_hotel, dis_viaje, destaca FROM dr_anuncio WHERE act='1' AND genero='Chica' AND act='1' OR genero='Chico' AND act='1' OR genero='Transexual' AND act='1' ORDER BY fecha DESC";     
        
$result mysql_query ($sql) or die (mysql_error());
    } 
__________________
Seguro que ahora me sale mejor!
  #4 (permalink)  
Antiguo 08/10/2004, 07:21
Avatar de benti  
Fecha de Ingreso: octubre-2001
Ubicación: Benidorm
Mensajes: 413
Antigüedad: 16 años, 1 mes
Puntos: 0
Nada no se como hacerlo si no esta enviado no muestra nada, si pongo la consulta independiente, si, ¿hay alternativa al isset?
__________________
Seguro que ahora me sale mejor!
  #5 (permalink)  
Antiguo 08/10/2004, 07:33
 
Fecha de Ingreso: agosto-2004
Ubicación: Valencia
Mensajes: 149
Antigüedad: 13 años, 4 meses
Puntos: 0
Claro, le estás dando una condicion de una variable que no le has pasado, no puede hacer nada en absoluto.
__________________
www.adimensional.info Adimensional
www.cientosderecetas.com Cientos de recetas
  #6 (permalink)  
Antiguo 08/10/2004, 09:54
Avatar de benti  
Fecha de Ingreso: octubre-2001
Ubicación: Benidorm
Mensajes: 413
Antigüedad: 16 años, 1 mes
Puntos: 0
No lo entiendo ni asi lo pilla.
Código PHP:
if (empty($_POST['bot_buscar'])){
        echo
"Esta vacio";
            
$sql "SELECT id, nombre, texto, provincia1, nuevoNombre1, tel1, tel2, dis_apar, dis_hotel, dis_viaje, destaca FROM dr_anuncio WHERE act='1' AND genero='Chica' AND act='1' OR genero='Chico' AND act='1' ORDER BY fecha DESC";                 
        }else{
        echo
"Enviado";
            
$sql "SELECT id, nombre, texto, provincia1, nuevoNombre1, tel1, tel2, dis_apar, dis_hotel, dis_viaje, destaca FROM dr_anuncio WHERE act='1' AND genero='".$_POST['genero']."' AND pais='"$_POST['pais']."' AND provincia1='".$_POST['provincia1']."' ORDER BY fecha DESC"
        }
    
$result mysql_query ($sql) or die (mysql_error()); 
Y si lo pongo asi sin verificacion SI:
Código PHP:
$sql "SELECT id, nombre, texto, provincia1, nuevoNombre1, tel1, tel2, dis_apar, dis_hotel, dis_viaje, destaca FROM dr_anuncio WHERE act='1' AND genero='Chica' AND act='1' OR genero='Chico' AND act='1' ORDER BY fecha DESC"
Al final lo he tenido que solucionar asi, pero no es lo suyo:
Código PHP:
if ($_POST['genero']==''){
        echo
"Esta vacio";
            
$sql "SELECT id, nombre, texto, provincia1, nuevoNombre1, tel1, tel2, dis_apar, dis_hotel, dis_viaje, destaca FROM dr_anuncio WHERE act='1' AND genero='Chica' AND act='1' OR genero='Chico' AND act='1' ORDER BY fecha DESC";                 
        }else{
        echo
"Enviado";
            
$sql "SELECT id, nombre, texto, provincia1, nuevoNombre1, tel1, tel2, dis_apar, dis_hotel, dis_viaje, destaca FROM dr_anuncio WHERE act='1' AND genero='".$_POST['genero']."' AND pais='"$_POST['pais']."' AND provincia1='".$_POST['provincia1']."' ORDER BY fecha DESC"
        }
    
$result mysql_query ($sql) or die (mysql_error()); 
Soy tonto no o no se ke...
__________________
Seguro que ahora me sale mejor!
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 07:58.