Ver Mensaje Individual
  #19 (permalink)  
Antiguo 02/01/2011, 06:17
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: Sistema de busqueda por selects

A mi me intriga esto que está en el post nro. 12:
Código MySQL:
Ver original
  1. 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 ''%%','%%','%%') AS Score FROM tabla
  2. WHERE MATCH (name1,nam' at line 1 SELECT SQL_CALC_FOUND_ROWS name1,name2,name3,name4 MATCH (name1,name2,name3,name4) AGAINST ('%%','%%','%%','%%') AS Score FROM tabla WHERE MATCH (name1,name2,name3,name4) AGAINST ('%%','%%','%%','%%') ORDER BY Score
Según nos muestra la sentencias de PHP usada:
Código PHP:
#$result = mysql_query( "SELECT * , MATCH(name1,name2,name3,name4) AGAINST ('%{$_GET['palabra']}%') as Score FROM tabla WHERE MATCH(name1,name2,name3,name4) AGAINST ('%{$_GET['palabra']}%') ORDER BY id_sql "); 
el bloque AGAINST ('%%','%%','%%','%%') proviene de $_GET['palabra'], lo que implica que está metiendo un error de sintaxis dentro del SQL a través del contenido de una variable.

Creo que todo el conjunto está mal programado, porque no ha depurado correctamente el uso de SQL embebido en PHP, porque no revisa bien lo que pone en las variables.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)