Foros del Web » Programando para Internet » Jquery »

Ayuda con buscador php jquery y mysql

Estas en el tema de Ayuda con buscador php jquery y mysql en el foro de Jquery en Foros del Web. El tema es el siguiente desarrolle un buscador..el problema radica cuando en la caja de texto escribo palabras con acentos o ñ ..mysql los traduce ...
  #1 (permalink)  
Antiguo 07/01/2010, 09:58
Avatar de UTunes  
Fecha de Ingreso: diciembre-2009
Mensajes: 4
Antigüedad: 14 años, 11 meses
Puntos: 0
Ayuda con buscador php jquery y mysql

El tema es el siguiente desarrolle un buscador..el problema radica cuando en la caja de texto escribo palabras con acentos o ñ ..mysql los traduce como caracteres raros como concescuencia la busqueda es erronea o nula...

Aclarando cuando cambio la variable $queryString por una cadena (sea ñ o vocales con acento) mysql y php trabajan de lo mas execelte....entonces sera por el query?...ayudaaaaaaaaaaaaa

html:

<? xml version="1.0" encoding="iso-8859-1" ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
.
.
.
<input type="text" size="30" value="" id="inputString" onkeyup="lookup(this.value);" />



jquery:

function lookup(inputString)
{
if(inputString.length == 0) {
$('#suggestions').fadeOut(); // Hide the suggestions box
} else {
$.post("rpc.php", {queryString: ""+inputString+""}, function(data) { // Do an AJAX call
$('#suggestions').fadeIn(); // Show the suggestions box
$('#suggestions').html(data); // Fill the suggestions box
});
}
};


rpc.php

if(isset($_POST['queryString'])) {
$queryString = $db->real_escape_string($_POST['queryString']);
if(strlen($queryString) >0)
{
echo '<span class="titulo">'.htmlentities('Sugerencias de Búsqueda').'</span>';
echo '<img id="imagent" src="images/linea.png"/>';
echo '<img id="imagenv" src="images/lineav.png"/>';
echo '<div id="empr">Empresas :</div>';
echo '<div id="cate">Categorias :</div>';
$query = $db->query('SELECT * FROM empresa WHERE emp_denominacion_nombre LIKE \'%'.$queryString.'%\'');
if($query)
.
.
.
{

Última edición por UTunes; 07/01/2010 a las 10:04
  #2 (permalink)  
Antiguo 07/01/2010, 11:19
Avatar de TheoriaX  
Fecha de Ingreso: agosto-2009
Ubicación: Hermosillo, Sonora
Mensajes: 217
Antigüedad: 15 años, 3 meses
Puntos: 5
Respuesta: Ayuda con buscador php jquery y mysql

usa esto a ver si te sirve

function delCaracteres($string)
{

$string = strtoupper($string);
$Eliminar = "ÀÁÂÃÄÅàáâãäåÒÓÔÕÖØòóôõöøÈÉÊËèéêëÇçÌÍÎÏìíîïÙÚÛÜùúû üÿÑñ";
$Reemplazar = "AAAAAAaaaaaaOOOOOOooooooEEEEeeeeCcIIIIiiiiUUUUuuu uyNn";
return(trim(strtoupper(strtr($string, $Eliminar, $Reemplazar))));
}
__________________
Desarrollador .Net y Php
MCTS Framework 2.0:Windows Applications
Microsoft Certificated Profesional
  #3 (permalink)  
Antiguo 07/01/2010, 11:55
Avatar de UTunes  
Fecha de Ingreso: diciembre-2009
Mensajes: 4
Antigüedad: 14 años, 11 meses
Puntos: 0
Respuesta: Ayuda con buscador php jquery y mysql

hola TheoriaX.

gracias ..pero ya lo habiaprobado pero no me cambia la variable especifica..pero si otras cadenas por ejemplo:

$prueba="ññññ";
esta si me cambia mas no la mia de todas muchas gracias..


Aun buscando la solucion....!!
  #4 (permalink)  
Antiguo 07/01/2010, 12:06
Avatar de Bellenger  
Fecha de Ingreso: noviembre-2004
Ubicación: En un lugar del Mundo...
Mensajes: 599
Antigüedad: 20 años
Puntos: 4
Respuesta: Ayuda con buscador php jquery y mysql

por que no usas codificacion UTF-8, tanto en tu xml :
Código PHP:
<?xml version="1.0" encoding="UTF-8"?>
como en tu javascript:
Código PHP:
<script type="text/javascript" src="tuscript.js" charset="UTF-8"></script> 
y tambien en tu pagina html, y si es posible devuelve los datos en utf8 estricto.
Saludos, espero te sirva.
__________________
Un Caballero Jura Lealtad. Usa su espada para suprimir la Injusticia No Conoce el Odio y Tampoco el AMOR...
  #5 (permalink)  
Antiguo 07/01/2010, 12:07
Avatar de loncho_rojas
Colaborador
 
Fecha de Ingreso: octubre-2008
Ubicación: En el mejor lugar del mundo
Mensajes: 2.704
Antigüedad: 16 años, 1 mes
Puntos: 175
Respuesta: Ayuda con buscador php jquery y mysql

Esto lo copie de un topico y me funciono de pelos. No recuerdo el usuario pero vale la pena aclarar que no fue mi solucion, pero me sirvio:

Dinos qué versión de Mysql utilizas.
Si usas PHPMyAdmin, dinos y que version tienes, dado que a partir de la version2.5 o algo asi recien posee el COLLATE

Cita:
2) qué cotejamiento usas para la base (deberías poner latin1_spanish_ci)
qué cotejamiento para la tabla donde tienes el campo (deberías poner latin1_spanish_ci) Es decir, tu BS mySQL deberia tener los CHARSET latin1 y COLLATE latin1_spanish_ci, no se si va en ese orden
3) qué cotejamiento para el campo donde escribes 'María'.(deberías poner latin1_spanish_ci)
4) qué cotejamiento usas para el archivo guia.php, que imagino es donde tienes el formulario con un input de tipo text donde escribes el nombre que buscas (debe ser guardado como ISO-8859-1, no como utf-8)
6) Si muestras en ese archivo no creo que haga falta nada más; pero si tienes otro archivo html o php donde muestres el dato, debería ser codificado también como iso-8859-1.
7) No creo que tu servidor funcione con otra codificación, sino que usará ISO-8859-1 por defecto, tanto para la recepción de datos como para la devolución de los datos. No obstante, para por si las moscas, añades tras realizar la conexión y seleccionar la base, mysql_query("SET NAMES 'ISO-8859-1'")

Si tienes todo esto y los meta tags en los archivos PHP y HTML, ya no sé qué puede estar ocurriendo, pues debería, creo, estar funcionando.

Imagino que no estarás usando ninguna función de conversión de tipos, ni el CSS esté cambiando nada en la parte donde introduces el texto...
Espero te sirva, a mi si
__________________
Ayudo con lo que puedo en el foro, y solo en el foro.. NO MENSAJES PRIVADOS.. NO EMAILS NI SKYPE u OTROS.

Antes de hacer un TOPICO piensa si puedes hallarlo en Google o en el Buscador del Foro...
  #6 (permalink)  
Antiguo 07/01/2010, 12:11
Avatar de loncho_rojas
Colaborador
 
Fecha de Ingreso: octubre-2008
Ubicación: En el mejor lugar del mundo
Mensajes: 2.704
Antigüedad: 16 años, 1 mes
Puntos: 175
Respuesta: Ayuda con buscador php jquery y mysql

porque en vez de esto:
<? xml version="1.0" encoding="iso-8859-1" ?>

no usas un meta tag de paso a los que te pase

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

Esto te permitira reconocer las ñ y los acentos que tengas en tu base de datos, siempre y cuando no esten como &ntilde; o algo asi. Y el usuario tambien podra buscar con acentos y con ñ

Los collate y el charset tambien deben ser aplicados a la BD asi el formato CHARSET latin1 y el collatelatin1_spanish_ci no discriminara entre mayusculas y minusculas y admitirá los caracteres ñ y acento... el UTF8 solo lo codifica de tal manera a que puedas escaparlos mediante &acute;'s

espero te sirvan mis topics..
__________________
Ayudo con lo que puedo en el foro, y solo en el foro.. NO MENSAJES PRIVADOS.. NO EMAILS NI SKYPE u OTROS.

Antes de hacer un TOPICO piensa si puedes hallarlo en Google o en el Buscador del Foro...
  #7 (permalink)  
Antiguo 07/01/2010, 15:55
Avatar de UTunes  
Fecha de Ingreso: diciembre-2009
Mensajes: 4
Antigüedad: 14 años, 11 meses
Puntos: 0
Respuesta: Ayuda con buscador php jquery y mysql

muchas gracias por sus respuestas chicos pero creo q ahi no va el problem...veran
todo esta bien entre los charset=iso-8859-1 ó UTF-8 ...porque probe...

$cadena="éstá cadeña se la eñviearé a mysql"

y se la envio mediante cualquier consulta a la base de datos y todo normal excelente...el problema es ..con la variable que recibo del query $queryString ...esta variable al concatenarla para realizar cualquier consulta me da simbolos extraños.....
entonces porque funciona con $cadena y no con $queryString.....

spero me ayuden...ya stoy pensando en cambiar la estructura del buscador ....

de todas gracias....
  #8 (permalink)  
Antiguo 08/01/2010, 11:36
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 5 meses
Puntos: 2135
Tema movido desde PHP a AJAX
  #9 (permalink)  
Antiguo 10/06/2011, 10:27
 
Fecha de Ingreso: junio-2011
Mensajes: 13
Antigüedad: 13 años, 5 meses
Puntos: 0
Respuesta: Ayuda con buscador php jquery y mysql

necesito porfavor quien me puede decir como ago para hacer un buscador en php con mysql, donde cuando yo busque una palabra me aparesca asi como en google. es decir a medida que vaya escribiendo la palabra me vaya mostrando las palabras que concide en ñla bd.

desde ya muchas gracias.
  #10 (permalink)  
Antiguo 10/06/2011, 19:45
 
Fecha de Ingreso: octubre-2010
Ubicación: Uruguay, Canelones
Mensajes: 66
Antigüedad: 14 años, 1 mes
Puntos: 6
Respuesta: Ayuda con buscador php jquery y mysql

Para realizar eso, tenés dos formas.
1.- Podés adquiri todos los datos del campo de busqueda (recomendable, guardado mejor en cache)
2.- Podes realizar una consulta de ajax directa a la base de datos

Cualquiera de los dos debería de funcionar con la función keyDown()
Por velocidad te recomiendo que lo hagas con el plugin autocomplete con los datos de la base de datos ya descargados para el uso. (opción 1)

Etiquetas: ajax, mysql, php, buscadores
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:32.