Ver Mensaje Individual
  #1 (permalink)  
Antiguo 01/07/2003, 12:25
Avatar de kctus
kctus
Usuario baneado!
 
Fecha de Ingreso: noviembre-2002
Ubicación: ToledoBsAsGaliciaBolivia
Mensajes: 1.038
Antigüedad: 21 años, 5 meses
Puntos: 1
Pregunta A ver como lo explico... mas o menos es: Dudas con busqueda en MySQL

Hola buenas

Hace tiempo que no me pasaba por aquí... (php) pero ahora hay algo que me tiene muy perdido, os lo explico:

Tengo una tabla (en MySQL) con datos de conciertos, mas concretamente estan el dia, mes, grupo, localidad... etc.
Y mi idea es que desde un formulario el usuario ponga las condiciones de los conciertos que quiere que se muestre.

Entonces, ya tengo el formulario, con 5 casillas donde introducir: localidad, provincia, grupo, dia y mes. Ese formulario va a otra página donde se tendrían que procesar las variables, y mostrar unicamente los registros que cumplan todas las opciones.
Y ahi me he liado. Lo que yo he hecho es poner por medio de "if" todas las posibilidades posibles de aparición de una o mas variables, porque hay que tener en cuenta que un usuario puede buscar usando una sola condición (mes por ejemplo) y otro puede usar mas de una (grupo y día por ejemplo)

Entonces, mi codigo es este:

Código PHP:
//Conexion con la base
mysql_connect("xxxxx","xxxxx","xxxxxx");


if (isset(
$provincia) and !isset($localidad) and !isset($dia) and !isset($mes) and !isset($grupo)){
$busqueda"provincia='$provincia'"; }
if (isset(
$provincia) and isset($localidad) and !isset($dia) and !isset($mes) and !isset($grupo)){
$busqueda"provincia='$provincia' and localidad='$localidad'"; }
if (isset(
$provincia) and !isset($localidad) and isset($dia) and !isset($mes) and !isset($grupo)){
$busqueda"provincia='$provincia' and dia='$dia'"; }
if (isset(
$provincia) and !isset($localidad) and !isset($dia) and isset($mes) and !isset($grupo)){
$busqueda"provincia='$provincia' and mes='$mes'"; }
if (isset(
$provincia) and !isset($localidad) and !isset($dia) and !isset($mes) and isset($grupo)){
$busqueda"provincia='$provincia' and grupo='$grupo'"; }

if (isset(
$provincia) and isset($localidad) and isset($dia) and !isset($mes) and !isset($grupo)){
$busqueda"provincia='$provincia' and localidad='$localidad' and dia='$dia'"; }
if (isset(
$provincia) and isset($localidad) and !isset($dia) and isset($mes) and !isset($grupo)){
$busqueda"provincia='$provincia' and localidad='$localidad' and mes='$mes'"; }
if (isset(
$provincia) and isset($localidad) and !isset($dia) and !isset($mes) and isset($grupo)){
$busqueda"provincia='$provincia' and localidad='$localidad' and grupo='$grupo'"; }
if (isset(
$provincia) and !isset($localidad) and isset($dia) and isset($mes) and !isset($grupo)){
$busqueda"provincia='$provincia' mes='$mes' dia='$dia'"; }
if (isset(
$provincia) and !isset($localidad) and isset($dia) and !isset($mes) and isset($grupo)){
$busqueda"provincia='$provincia' and grupo='$grupo' and dia='$dia'"; }
if (isset(
$provincia) and !isset($localidad) and !isset($dia) and isset($mes) and isset($grupo)){
$busqueda"provincia='$provincia' and mes='$mes' and grupo='$grupo'"; }

if (isset(
$provincia) and isset($localidad) and isset($dia) and isset($mes) and !isset($grupo)){
$busqueda"provincia='$provincia' and localidad='$localidad' and dia='$dia' and mes='$mes'"; }
if (isset(
$provincia) and isset($localidad) and isset($dia) and !isset($mes) and isset($grupo)){
$busqueda"provincia='$provincia' and localidad='$localidad' and dia='$dia' and grupo='$grupo'"; }
if (isset(
$provincia) and isset($localidad) and !isset($dia) and isset($mes) and isset($grupo)){
$busqueda"provincia='$provincia' and localidad='$localidad' and grupo='$grupo' and mes='$mes'"; }
if (isset(
$provincia) and !isset($localidad) and isset($dia) and isset($mes) and isset($grupo)){
$busqueda"provincia='$provincia' and grupo='$grupo' and dia='$dia' and mes='$mes'"; }

if (isset(
$localidad) and !isset($provincia) and !isset($dia) and !isset($mes) and !isset($grupo)){
$busqueda"localidad='$localidad'"; }
if (isset(
$localidad) and !isset($provincia) and isset($dia) and !isset($mes) and !isset($grupo)){
$busqueda"localidad='$localidad' and dia='$dia'"; }
if (isset(
$localidad) and !isset($provincia) and !isset($dia) and isset($mes) and !isset($grupo)){
$busqueda"localidad='$localidad' and mes='$mes'"; }
if (isset(
$localidad) and !isset($provincia) and !isset($dia) and !isset($mes) and isset($grupo)){
$busqueda"localidad='$localidad' and grupo='$grupo'"; }

if (isset(
$localidad) and !isset($provincia) and isset($dia) and isset($mes) and !isset($grupo)){
$busqueda"localidad='$localidad' and mes='$mes' and dia='$dia'"; }
if (isset(
$localidad) and !isset($provincia) and isset($dia) and !isset($mes) and isset($grupo)){
$busqueda"localidad='$localidad' and grupo='$grupo' and dia='$dia'"; }
if (isset(
$localidad) and !isset($provincia) and !isset($dia) and isset($mes) and isset($grupo)){
$busqueda"localidad='$localidad' and mes='$mes' and grupo='$grupo'"; }

if (isset(
$localidad) and !isset($provincia) and isset($dia) and isset($mes) and isset($grupo)){
$busqueda"localidad='$localidad' and grupo='$grupo' and dia='$dia' and mes='$mes'"; }

if (isset(
$dia) and !isset($localidad) and !isset($provincia) and !isset($mes) and !isset($grupo)){
$busqueda"dia='$dia'"; }
if (isset(
$dia) and !isset($localidad) and !isset($provincia) and isset($mes) and !isset($grupo)){
$busqueda"dia='$dia' and mes='$mes'"; }
if (isset(
$dia) and !isset($localidad) and !isset($provincia) and !isset($mes) and isset($grupo)){
$busqueda"dia='$dia' and grupo='$grupo'"; }

if (isset(
$dia) and !isset($localidad) and !isset($provincia) and isset($mes) and isset($grupo)){
$busqueda"dia='$dia' and mes='$mes' and grupo='$grupo'"; }

if (isset(
$mes) and !isset($localidad) and !isset($dia) and !isset($provincia) and !isset($grupo)){
$busqueda"mes='$mes'"; }

if (isset(
$mes) and !isset($localidad) and !isset($dia) and !isset($provincia) and isset($grupo)){
$busqueda"mes='$mes' and grupo='$grupo'"; }

if (isset(
$grupo) and !isset($localidad) and !isset($dia) and !isset($provincia) and !isset($mes)){
$busqueda"grupo='$grupo'"; }

$consulta=mysql_db_query("base_de_datos","select * from conciertos where '$busqueda' order by dia"); 
Como veis, he puesto por medio de los if, isset y !isset todas las posibilidades posibles, para que cada uno en su caso, se genere la variable $busqueda donde estén las condiciones.

Y no se porque, nunca encuentra nigún resultado. Es decir, debe de fallar algo de ese código... (y como me suele pasar, quizas sea lo mas simple)

Agradeceria cualquier ayuda

Muchas gracias amigos

Última edición por kctus; 01/07/2003 a las 12:30