bueno, primero tenes que verificar que el campo no este vacio.
tipo:
Código PHP:
if($_POST['nombreCliente'] != ""){
$condicionCliente = "cliente LIKE %".$_POST['nombreCliente']."%";
}else{
$condicionCliente = "1";
}
if($_POST['nombreCiudad'] != ""){
$nombreCiudad = "ciudad LIKE %".$_POST['nombreCiudad']."%";
}else{
$nombreCiudad = "1";
}
Asi con todos los campos, y despues armas la consulta
Código PHP:
$sql = "SELECT * FROM <table> WHERE ".$condicionCliente. " and ".$condicionCiudad;
Y asi con todos los campos, el 1 (uno) lo pongo en el if, porque si la variable no esta seteada, no tire error la consulta por los AND
Nota: Algunos utilizan isset() en lugar de la comparacion con la cadena vacia, para mi es lo mismo, yo prefiero la cadena vacia.
Espero haber ayudado.
Saludos