Foros del Web » Programando para Internet » PHP »

Insertar y leer caracteres chinos php+oracle 10.2.0.4.0

Estas en el tema de Insertar y leer caracteres chinos php+oracle 10.2.0.4.0 en el foro de PHP en Foros del Web. Buenas, Tengo un problema grabe y no se como solucionarlo. Tengo una bbdd oracle 10.2.0.4.0 con charset=WE8ISO8859P1 Tengo que insertar caracteres en chino de dos ...
  #1 (permalink)  
Antiguo 23/07/2010, 05:00
 
Fecha de Ingreso: febrero-2005
Mensajes: 81
Antigüedad: 19 años, 2 meses
Puntos: 0
Insertar y leer caracteres chinos php+oracle 10.2.0.4.0

Buenas,

Tengo un problema grabe y no se como solucionarlo.

Tengo una bbdd oracle 10.2.0.4.0 con charset=WE8ISO8859P1

Tengo que insertar caracteres en chino de dos formas, desde un formulario y a mano directamente en la bbdd.

si uso el charset=WE8ISO8859P1 para conectarme:
Cuando los inserto a mano en la bbdd, puedo ver los caracteres correctos en el TOAD que uso para administrar, pero cuando los leo con el php veo "¿¿¿¿¿"

Cuando los inserto a traves de un formulario en la bbdd, veo los caracteres mal codificados en la bbdd pero los leo bien con el php por pantalla.

si uso cualquier otro charset:
no veo nada bien ni en la bbdd ni en el php de ninguna de las dos formas

he probado a conectarme con distintos charsets estos 3 y alguno mas

$conn = oci_connect("xxxx", "xxxxx", "xxxx", "utf8");
$conn = oci_connect("xxxx", "xxxxx", "xxxx", "WE8ISO8859P1");
$conn = oci_connect("xxxx", "xxxxx", "xxxx", "al32utf8");

He probado a usar bind_variables y no funciona

alguien ha tenido este problema?

La tienda online la tenemos hecha en java, y no tenemos ningun problema ni al insertar (lo hacemos con bind_variables) ni al leer, lo leemos normal como cualquier utf8.

Muchas gracias de antemano.
  #2 (permalink)  
Antiguo 23/07/2010, 05:39
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 10 meses
Puntos: 1517
Respuesta: Insertar y leer caracteres chinos php+oracle 10.2.0.4.0

Una forma que puede que logres publicar los caracteres es usando htmlentities y el tercer parametro declarar el charset que te mencionan en el manual. Pero antes tienes que declarar que tipo de caracter enviaras y el archivo debe tener indicado que tipo de caracter está leyendo. Puedes usar header para indicar el caracter que está recibiendo.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 23/07/2010, 06:14
 
Fecha de Ingreso: febrero-2005
Mensajes: 81
Antigüedad: 19 años, 2 meses
Puntos: 0
Respuesta: Insertar y leer caracteres chinos php+oracle 10.2.0.4.0

el problema del htmlentities es que me codifica los caracteres en la bbdd i eso no tiene que ser asi, ya que tengo procedures que me crean archivos .dat directamente desde la bbdd para pasarselos a otro departamento, y si uso esas funciones les envio caracteres "raros"
  #4 (permalink)  
Antiguo 23/07/2010, 07:08
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 14 años, 10 meses
Puntos: 1517
Respuesta: Insertar y leer caracteres chinos php+oracle 10.2.0.4.0

No me refiero a almacenarlos así en la base de datos. Si no para mostrarlos en pantalla.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos

Etiquetas: caracteres
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 11:10.