Ver Mensaje Individual
  #1 (permalink)  
Antiguo 30/11/2011, 10:28
cpuser
 
Fecha de Ingreso: diciembre-2005
Ubicación: Mar del Plata
Mensajes: 146
Antigüedad: 19 años, 1 mes
Puntos: 2
Problema con ElseIf y &&

Qué tal? Estoy usando algunos condicionales para ver qué ejecutar pero me está surgiendo un error, en algunos casos no devuelve nada, ya estuve probando todas las variables que conozco para ver que si lo podia solucionar, pero nada...

Lo primero que hago es enviar un formulario que son todas listas por post y despues levanto los datos aca:

Código PHP:
$titulo $_POST['titulo'];
$categoria $_POST['categoria'];
$aniodesde $_POST['aniodesde'];
$aniohasta $_POST['aniohasta'];
$combustible $_POST['combustible'];

if (
$combustible == 'todos') {
    
$buscar mysql_query("SELECT id, titulo, categoria, imagen1
    FROM autos
    WHERE
        titulo = '$titulo' AND
        categoria = '$categoria' AND
        ano BETWEEN $aniodesde AND $aniohasta
    ORDER BY id DESC"
) or die ();

    
elseif (
$titulo == "" and $categoria == "" and $combustible == 'todos'
{
    
$buscar mysql_query("SELECT id, titulo, categoria, imagen1
    FROM autos
    WHERE
        ano BETWEEN $aniodesde AND $aniohasta
    ORDER BY id DESC"
) or die ();
    }    
    
elseif (
$combustible == 'todos' &&  $categoria == '-- Seleccionar --')
{
    
$buscar mysql_query("SELECT id, titulo, categoria, imagen1
    FROM autos
    WHERE
        titulo = '$titulo' AND
        ano BETWEEN $aniodesde AND $aniohasta
    ORDER BY id DESC"
) or die ();
    }        
    

else {
        
$buscar mysql_query("SELECT id, titulo, categoria, imagen1
    FROM autos
    WHERE
        titulo = '$titulo' AND
        categoria = '$categoria' AND
        combustible = '$combustible' AND
        ano BETWEEN $aniodesde AND $aniohasta
    ORDER BY id DESC"
) or die ();

Especificamente cuando envio el formulario para que funcione alguno de esos dos ELSEIF, no va ni para atras... utilizo algunos otros que los borré para que el codigo no se haga tan tedioso, esos si funcionan a la perfección, pero estos dos que pongo aca no.

Es rarisimo, los datos del formulario los levanto todos correctamente, el error surge creo yo con "Combustible", si lo dejo solo

Código PHP:
if ($combustible == 'todos'
funciona correctamente, pero cuando lo sumo a algo

Código PHP:
elseif ($titulo == '' and $categoria == '' and $combustible == 'todos'
ya no funciona mas, por ejemplo:
Código PHP:
$titulo == "" and $categoria ==  "" 
va perfecto, solo me pasa cuando le agrego $combustible a la condicion y que sea igual a "todos"

Acá esta el form HTML para que vean que no hay ningun error
Código HTML:
Ver original
  1. <select name="combustible">
  2.                         <option selected="selected" value="todos" >Ver Todos</option>
  3.                         <option value="Gasolina" >Gasolina</option>
  4.                         <option value="Diesel" >Diesel</option>
  5.                         <option value="GNC" >GNC</option>
  6.                         <option value="Eléctrico" >Eléctrico</option>
  7.                         <option value="Híbrido" >Híbrido</option>
  8.                         <option value="Hidrógeno" >Hidrógeno</option>
  9.                         <option value="Alconafta" >Alconafta</option>
  10.                    </select>

La verdad que no se que puede ser, ojalá alguien pueda ayudarme

Muchas gracias por su tiempo!
__________________
Me gusta mucho ver Videos de carros en internet :)