Cita:
Iniciado por CazaresLuis
Si lo que quieres hacer es que mediante un formulario escribas ciertos criterios y le des realizar busqueda y te arme un query dependiendo de cuales de estos campos estan o no llenos te recomendaría lo siguiente:
Suponiendo que tu form tiene dos campos (Nombre y Apellidos) yo haría lo siguiente:
Código PHP:
<?php
// Creo el query principal sin clausulas WHERE ya que esas se crearan dinámicamente dependiendo de tus dos campos de formulario
$query = "SELECT tus_campos FROM tu_tabla";
// Primero detectaría si las variables POST existen una a una
// Checar si existe la variable POST Nombre
if(isset($_POST['Nombre']) && !empty($_POST['Nombre']))
{
// Si el campo Nombre fue capturado agregamos el WHERE
$query .= " WHERE nombre= ' ".$_POST['Nombre'] . " ' ";
// Ahora checamos la existencia de la variable POST Apellidos
if(isset($_POST['Apellidos']) && !empty($_POST['Apellidos']))
{
// Si el campo Apellidos fue capturado agregamos un AND
$query .= " AND apellidos= ' ".$_POST['Apellidos'] . " ' "
}
}
// Si no existe la variable POST Nombre, verificamos que exista la Variable POST Apellidos
elseif(isset($_POST['Apellidos']) && !empty($_POST['Apellidos']))
{
// Si el campo Apellidos fue capturado agregamos el WHERE
$query .= " WHERE apellidos = ' ". $_POST['Apellidos'] ." ' ";
}
// Imprimimos en pantalla como queda armado nuestro query
echo $query;
?>
Si vas a crear un formulario de busquedas te recomiendo leas sobre prevenir la injección de codigo malicioso en MySQL
Saludos
esto es justo lo que estaba pensando hacer, y tu me has ayudado con un trozo de codigo, de verdad muchas gracias.