Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > PHP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 01-08-2010
Avatar de santiago14
santiago14 santiago14 is offline
Miembro
 
Registrado: sep 2003
Ubicación: Cerrillos, Salta, Argentina
Posts: 583
Poder: 21
santiago14 Va por buen camino
Question Buscador PHP, un poco mas complejo

Buenas, estoy con el siguiente problema:
¿cómo logro que un buscador en una página me devuelva los artículos que tienen palabras acentuadas y no acentuadas?

Explico mejor:

Si en mi buscador ponen la palabra "México" (con acento), la buscará pero solo encontrará los artículos que la contengan, eso está bien, pero excluirá a los artículos que contengan la palabra "Mexico" (sin acento).
Si pongo México o Mexico, el buscador debería encontrar los artículos que contengan México y Mexico. ¿Es eso posible?
Gracias.
__________________
Uno es responsable de lo que hace y de lo que omite hacer.

Última edición por santiago14 fecha: 01-08-2010 a las 21:34:05. Razón: Mejora de la explicación
Responder Con Cita
  #2  
Antiguo 01-08-2010
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Más que PHP creo que es en la base de datos donde debes buscar. Por ejemplo, en MySQL, yo utilizo el juego de caracteres Latin1 con el cotejamiento CI, que quiere decir case insensitive. Con este cotejamiento, no sólo se trata por igual a mayúsculas y minúsculas, sino también a letras acentuadas y no acentuadas. Con esto, las búsquedas encontrarán todas las coincidencias sin importar ni el caso ni los acentos.

// Saludos
Responder Con Cita
  #3  
Antiguo 01-08-2010
Avatar de santiago14
santiago14 santiago14 is offline
Miembro
 
Registrado: sep 2003
Ubicación: Cerrillos, Salta, Argentina
Posts: 583
Poder: 21
santiago14 Va por buen camino
Red face

Gracias Román, pruebo tu sugerencia y aviso.
Saludos.
__________________
Uno es responsable de lo que hace y de lo que omite hacer.
Responder Con Cita
  #4  
Antiguo 02-08-2010
Avatar de santiago14
santiago14 santiago14 is offline
Miembro
 
Registrado: sep 2003
Ubicación: Cerrillos, Salta, Argentina
Posts: 583
Poder: 21
santiago14 Va por buen camino
Cita:
Empezado por roman Ver Mensaje
Más que PHP creo que es en la base de datos donde debes buscar. Por ejemplo, en MySQL, yo utilizo el juego de caracteres Latin1 con el cotejamiento CI, que quiere decir case insensitive. Con este cotejamiento, no sólo se trata por igual a mayúsculas y minúsculas, sino también a letras acentuadas y no acentuadas. Con esto, las búsquedas encontrarán todas las coincidencias sin importar ni el caso ni los acentos.

// Saludos
Gracias nuevamente Román, estuve haciendo pruebas y la cosa parece funcionar bien.
Ahora, ¿puede hacerse lo mismo con Delphi 7 y Firebird 2.1?

Saludos.
__________________
Uno es responsable de lo que hace y de lo que omite hacer.
Responder Con Cita
  #5  
Antiguo 25-08-2010
JXJ JXJ is offline
Miembro
 
Registrado: abr 2005
Posts: 2.475
Poder: 22
JXJ Va por buen camino
te puede servir esto

Firebird 2.1.2 and UNICODE_CI

Starting with Firebird 2.1.2 (or earlier, at least 2.1.2 is what the Release Notes seem to tell), you can use a new Case Insensitive Collation named UNICODE_CI for the UTF8 character set (Unicode).

So when your default character set is UTF8, your table declaration might look like this:

CREATE TABLE PERSONS (

PERS_ID INTEGER NOT NULL PRIMARY KEY,

LAST_NAME VARCHAR(50) COLLATE UNICODE_CI,
FIRST_NAME VARCHAR(50) COLLATE UNICODE_CI

);

Your Index is a regular index declaration without any specials:

CREATE INDEX IDX_PERSON_LASTNAME ON PERSONS (LAST_NAME);

And your search expressions need no UPPER or whatsoever:

SELECT * FROM PERSONS WHERE LAST_NAME = :SEARCH_STRING

That's it.


lo tome de aqui

http://www.destructor.de/firebird/ca...tivesearch.htm


lo que seria bueno es poder hacer ambas cosas
con un checkbox. habilitado
hacer busqueda sensible mayusculas minusculas, y acentos
y sin habilitar que la busqueda sea case sensitive.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Manejo complejo de Strings MaMu OOP 5 14-10-2008 05:37:29
Imprimir un informe complejo Alexis7788 Impresión 1 02-11-2006 06:00:57
Como realizar un select complejo Nelly SQL 7 14-12-2005 01:14:53
reporte, para mi complejo, en rave gustavoh Impresión 4 24-07-2005 20:26:42
Buscador? olaya Internet 4 18-08-2003 18:52:30


La franja horaria es GMT +2. Ahora son las 19:40:18.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi