Ver Mensaje Individual
  #4 (permalink)  
Antiguo 25/02/2013, 07:12
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Error en consultas Sql.

Lo que te están diciendo es que el código es ilegible como lo pones.
En SQL uno tiende a escribir las consultas de una forma más estructurada, de modo que sea sencillo de recorrer de arriba a abajo.
Además estás poniendo código PHP, cosa no permitida en estos foros, y usando la etiqueta equivocada (no es CODE ni PHP, o es el Highlight SQL o es MySQL).

Minimamente habría que ponerlo así:
Código MySQL:
Ver original
  1. (SELECT 0 qnum, A.id_aviso, A.telefonos, A.telefonos3, A.movil, A.dni, A.name, A.apellidos, B.localidad, B.calle
  2. FROM clientes A, dir_clientes B
  3. WHERE A.id_aviso=B.id_aviso AND B.calle != '' AND A.telefonos='$vte')
  4. (SELECT 1 qnum, id_aviso, telefonos, telefonos3, movil, dni, name, apellidos, localidad, calle
  5. FROM avisos
  6. WHERE telefonos='$vte' )
  7. (SELECT 2 qnum, U.id_aviso, U.telefonos, U.telefonos3, U.movil, U.dni, U.name, U.apellidos, D.localidad, D.calle
  8. FROM usuarios U, dir_usuarios D
  9. WHERE U.id_aviso=D.id_aviso AND D.calle != ''AND U.telefonos='$vte');
  10.  
  11. (SELECT 0 qnum, A.id_aviso, A.telefonos, A.telefonos3, A.movil, A.dni, A.name, A.apellidos, B.localidad, B.calle
  12. FROM clientes A, dir_clientes B
  13. WHERE A.id_aviso=B.id_aviso AND B.calle != '' AND A.movil='$movil')
  14. (SELECT 1 qnum, id_aviso, telefonos, telefonos3, movil, dni, name, apellidos, localidad, calle
  15. FROM avisos
  16. WHERE movil='$movil' )
  17. (SELECT 2 qnum, U.id_aviso, U.telefonos, U.telefonos3, U.movil, U.dni, U.name, U.apellidos, D.localidad, D.calle
  18. FROM usuarios U, dir_usuarios D
  19. WHERE U.id_aviso=D.id_aviso AND D.calle != ''AND U.movil='$movil');
  20.  
  21. (SELECT 0 qnum, A.id_aviso, A.telefonos, A.telefonos3, A.movil, A.dni, A.name, A.apellidos, B.localidad, B.calle
  22. FROM clientes A, dir_clientes B
  23. WHERE A.id_aviso=B.id_aviso AND B.calle != '' AND A.dni='$dni')
  24. (SELECT 1 qnum, id_aviso, telefonos, telefonos3, movil, dni, name, apellidos, localidad, calle
  25. FROM avisos
  26. WHERE dni='$dni' )
  27. (SELECT 2 qnum, U.id_aviso, U.telefonos, U.telefonos3, U.movil, U.dni, U.name, U.apellidos, D.localidad, D.calle
  28. FROM usuarios U, dir_usuarios D
  29. WHERE U.id_aviso=D.id_aviso AND D.calle != ''AND U.dni='$dni');
  30.  
  31. (SELECT 0 qnum, A.id_aviso, A.telefonos, A.telefonos3, A.movil, A.dni, A.name, A.apellidos, B.localidad, B.calle
  32. FROM clientes A, dir_clientes B
  33. WHERE A.id_aviso=B.id_aviso AND B.calle != '' AND B.calle like '%$calle%')
  34. (SELECT 1 qnum, id_aviso, telefonos, telefonos3, movil, dni, name, apellidos, localidad, calle
  35. FROM avisos
  36. WHERE calle like '%$calle%')
  37. (SELECT 2 qnum, U.id_aviso, U.telefonos, U.telefonos3, U.movil, U.dni, U.name, U.apellidos, D.localidad, D.calle
  38. FROM usuarios U, dir_usuarios D
  39. WHERE U.id_aviso=D.id_aviso AND D.calle != ''AND D.calle like '%$calle%');
  40.  
  41. (SELECT 0 qnum, A.id_aviso, A.telefonos, A.telefonos3, A.movil, A.dni, A.name, A.apellidos, B.localidad, B.calle
  42. FROM clientes A, dir_clientes B
  43. WHERE A.id_aviso=B.id_aviso AND B.calle != '' AND A.apellidos like '%$ape%')
  44. (SELECT 1 qnum, id_aviso, telefonos, telefonos3, movil, dni, name, apellidos, localidad, calle
  45. FROM avisos
  46. WHERE apellidos like '%$ape%')
  47. (SELECT 2 qnum, U.id_aviso, U.telefonos, U.telefonos3, U.movil, U.dni, U.name, U.apellidos, D.localidad, D.calle
  48. FROM usuarios U, dir_usuarios D
  49. WHERE U.id_aviso=D.id_aviso AND D.calle != ''AND U.apellidos like '%$ape%');
  50.  
  51. (SELECT 0 qnum, A.id_aviso, A.telefonos, A.telefonos3, A.movil, A.dni, A.name, A.apellidos, B.localidad, B.calle
  52. FROM clientes A, dir_clientes B
  53. WHERE A.id_aviso=B.id_aviso AND B.calle != '' AND A.name like '%$name%')
  54. (SELECT 1 qnum, id_aviso, telefonos, telefonos3, movil, dni, name, apellidos, localidad, calle
  55. FROM avisos
  56. WHERE name like '%$name%')
  57. (SELECT 2 qnum, U.id_aviso, U.telefonos, U.telefonos3, U.movil, U.dni, U.name, U.apellidos, D.localidad, D.calle
  58. FROM usuarios U, dir_usuarios D
  59. WHERE U.id_aviso=D.id_aviso AND D.calle != ''AND U.name like '%$name%');
  60.  
  61. (SELECT 0 qnum, A.id_aviso, A.telefonos, A.telefonos3, A.movil, A.dni, A.name, A.apellidos, B.localidad, B.calle
  62. FROM clientes A, dir_clientes B
  63. WHERE A.id_aviso=B.id_aviso AND B.calle != '' AND B.localidad like '%$loca%')
  64. (SELECT 1 qnum, id_aviso, telefonos, telefonos3, movil, dni, name, apellidos, localidad, calle
  65. FROM avisos
  66. WHERE localidad like '%$loca%')
  67. (SELECT 2 qnum, U.id_aviso, U.telefonos, U.telefonos3, U.movil, U.dni, U.name, U.apellidos, D.localidad, D.calle
  68. FROM usuarios U, dir_usuarios D
  69. WHERE U.id_aviso=D.id_aviso AND D.calle != ''AND D.localidad like '%$loca%');

Por otro lado, a nivel de implementación, te estás complicando la vida.
¿Para qué escribir tantas veces la misma consulta que sólo cambia un determinado parámetro en cada una?
Es más sencillo hacer una sola consulta y determinar qué contendrá el parámetro a agregar, y sólo ese segmento. De ese modo simplificarías el asunto.
Creo que luego te lo agregaré en el post de PHP...

Hay algunso detalles más, pero esos los veremos después.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Última edición por gnzsoloyo; 25/02/2013 a las 07:21