Cita:
Iniciado por quinqui
Holas, janyazul.
En tu consulta, no sé si esto te servirá: si vas a agregar un filtro opcional, que depende de lo que se ingrese en un formulario, la consulta debiera estar así:
Código PHP:
$result2 = mysql_query("SELECT * FROM identificacion WHERE ".(!empty($sexo) ? "A2='$sexo' AND ": "")." ((A3 >= '$edad1' and A3 <='$edad2') or '$edad1' = '') AND .........", $bd) or die('ERROR: '.mysql_error());
Debiendo repetir la lógica que te puse para el campo A2, en los otros que estás haciendo igual: analiza con mayor profundidad si el OR que usas (y que yo quité) es en verdad tu opción correcta en este caso.
Saludos!
Hola quinqui, muchas gracias por responder, lo hice como dijiste, solamente que cambie las comillas por comillas simples, porque si no me causaba conflicto y quedo asi:
Código PHP:
$result2 = mysql_query("SELECT * FROM identificacion WHERE '.(!empty($sexo) ? 'A2='$sexo' AND ': '').'((A3 >= '$edad1' and A3 <='$edad2') or '$edad1' = '')' AND (!empty($comunidad) ? 'A8='$comunidad' AND ': '').' AND '.(!empty($ocupacion) ? 'A7='$ocupacion' AND ': '').' AND'.(!empty($estadocivil) ? 'A4='$estadocivil' AND ': '').' AND '.(!empty($ayuda) ? 'A14='$ayuda' AND ': '')", $bd) or die('ERROR: '.mysql_error());
Pero me da este error y no se como resolverlo
ERROR: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'A2='' AND ': '').'((A3 >= '' and A3 <='') or '' = '')' AND (!empty() ? 'A8='' AN' at line 1
Muchas gracias de nuevo.