Ver Mensaje Individual
  #6 (permalink)  
Antiguo 29/10/2007, 19:41
ARJSystem
 
Fecha de Ingreso: mayo-2007
Mensajes: 118
Antigüedad: 17 años
Puntos: 0
Re: Urgente: Caracteres % y ' en busquedas

Cita:
Iniciado por Seppo Ver Mensaje
Vos ahora tenés un string ($HTTP_GET_VARS['algo...']), y eso lo utilizás en una consulta MySQL, lo que digo es que ejecutes lo siguiente

Código PHP:
$search $_GET['algo...']; // obvio que en vez de algo... va el nombre del índice que usás, y pongo _GET en vez de HTTP_GET_VARS porque fue reemplazado, desde PHP 4.1
$search mysql_real_escape_string($search); // escapás los caracteres comunes, tipo comillas o apóstrofes
$search strtr($search, array('_' => '\_''%' => '\%')); //escapás el _ y % que se escapan sólo para los LIKE
mysql_query('SELECT ... WHERE name LIKE \'' $search '\'');   // ejecutás la consulta 

Gracias Seppo, he estado probando y no he conseguido la solucion.

Mi servidor esta provisto de el programa este que dectecta caracteres extraños como la comilla simple. Entonces en lugar de Glos's me esta metiendo Glos\'s.

El problema lo tengo unicamente cuando se introduce unicamente % en el buscador.

También podria hacer una validacion js para ver si es % pero no se si existira algo parecido a lo que me has comentado.

Otra cosilla, para poder realizar la busqueda con Glos's en lugar de con Glos\'s, deberia utilizar el strtr? Supongo que no ya que caeria en el mismo problema, entonces como podria realizar esa busqueda correctamente?

Gracias y un saludo amigo.