From: | Ricardo Salvador Ríos Márquez <alfil__negro(at)hotmail(dot)com> |
---|---|
To: | pgsql-ayuda(at)tlali(dot)iztacala(dot)unam(dot)mx |
Subject: | Re Subject: [Pgsql-ayuda] Problema Postgres, PHP acentos y tildes |
Date: | 2003-07-10 16:15:50 |
Message-ID: | BAY1-F79GNZ4mF1IT1800003afe@hotmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Yo hago esto
en php
SELECT * FROM ALUMNO WHERE
position(lower(translate('$nombre','áéíóú','aeiou')) in
lower(translate(nombre,'áéíóú','aeiou')))>0 ORDER BY nombre ASC
Con esta consulta hago una busqueda en la tabla alumno con respecto al
campo nombre ,
$nombre es la variable que paso a travez de un formulario, la funcion
translate de postgres lo que
me hace es sustituir un caracter por otros , por ejemplo
translate('Hola', 'o', 'ooooooo') me devolveria Hooooooola
el lower es para que te trate igual mayusculas y minusculas
// Esto escribiste
>>Subject: [Pgsql-ayuda] Problema Postgres, PHP acentos y tildes
Antes que nada saludos a todos ..
He creado una base de datos en postgres con encoding LATIN1 y tambien con
el default SQL_ASCII..
Ahi he insertado en uno de los campos (appat) datos de apellido paterno
por ejemplo P'erez(acentuado),
al hacer la consulta desde el monitor de psql ..
dir=# select * from datos where appat='P'erez';
SI me da el resultado correcto .. PERO ..
al tomar la variable desde un campo <input type="text" name="consulta"> (p
ej)
y hacer la consulta desde un script de PHP .. NO se encuentra ningun
resultado .. selecciono el MISMO registro pero en el campo nombre por
ejemplo y me da como resultado:
"Pito P(A mayuscula con tilde + signo de copyright)rez" (p ej)
Nota: al hacer la consulta sobre nombres o apellidos
NO acentuados NO TENGO ERROR ALGUNO
la pregunta es DONDE ESTA EL PROBLEMA?? en PHP? En la codificacion de la
base desde POSTGRES? en el charset=? de HTML?
He probado: Cambiar el encoding de la base de en POSTRGES..(LATIN1,
SQL_ASCII) etc
Habilitar en php.ini la linea default_charset="ISO-8859-1"
Modificar charset en <meta http-equiv="content-type" content="text/html;
charset=ISO-8859-1">
Y NO puedo hacer consultas sobre registros con caracteres acentuados..
LA IDEA ES MANTENER DENTRO DE LA BASE DE DATOS ACENTOS Y TILDES PARA QUE
AL HACER CONSULTAS ARROJE EL RESULTADO CORRECTO
SI ALGUNO DE USTEDES PUEDE ORIENTARME PARA SOLUCIONAR ESTE PROBLEMA
..MUCHO SE LOS AGRADECERE!!
_________________________________________________________________
Charla con tus amigos en línea mediante MSN Messenger:
http://messenger.yupimsn.com/
From | Date | Subject | |
---|---|---|---|
Next Message | Alvaro Herrera | 2003-07-10 16:25:32 | Re: [Pgsql-ayuda] interfaz modo texto |
Previous Message | Adrian Galindo | 2003-07-10 16:13:47 | Re: [Pgsql-ayuda] Problema Postgres, PHP acentos y tildes |