Problema con tildes usando Tablekit

33 views
Skip to first unread message

marina

unread,
Sep 16, 2009, 7:35:21 AM9/16/09
to Ajax-es
Buenas!

¿Que tal? Estoy usando tablekit para un sistema de gestión interno,
por razones que escapan de mis manos, debo usar la codificación ISO en
vez de utf-8, y con el tablekit el visualizar los datos no me da
problemas, pero cuando le paso usando ajax los datos a la base de
datos al php llegan los acentos mal, y no he podido solucionarlo, he
probado a cambiar la codificación del archivo php y del javascript.

¿Alguién sabe cómo podría hacerlo? Sin tener que recurrir a la chapuza
de buscar el carácter "extraño" y reemplazarlo en el php. Por si no me
han entendido bien, les explico el proceso paso a paso.

1. Se muestran los datos de la base de datos (aquí las tildes se ven
bien).
2. Al clicar cuando se muestra el cuadro de edición el texto se sigue
bien.
3. El javascript envía el texto con el formato correcto.
4. El php ya recibe el texto mal :'(

Espero alguien pueda ayudarme

Edgar Muñoz

unread,
Sep 16, 2009, 10:45:27 AM9/16/09
to aja...@googlegroups.com
no sé que tan hondo vaya yo a meter las patas con mi consejo, pero espero se me abone la buena intención:
 
no sería bueno probar guardando en la base de datos los caracteres html de las tildes, me refiero a los siguiente:
 
&aacute en vez de á
&eacute en vez de é
&iacute en vez de í
&oacute en vez de ó
&uacute en vez de ú
quedo atento a este hilo.
2009/9/16 marina <marina....@gmail.com>



--
Edgar Orlando Muñoz Carvajal
Ingeniero de Sistemas

Tel 583 5744
    311 742 4008
       http://www.linkedin.com/in/garraxxi
       http://garraxxi.emurse.com
       http://edgar-munoz-c.neurona.com/
       http://orlandoego.blogspot.com/

marina

unread,
Sep 17, 2009, 2:38:05 AM9/17/09
to Ajax-es
Buenas,

Gracias por contestar, en un principio es lo que quería hacer, ya que
tengo una función que me cambia todos los cáracteres a ese formato. El
problema está en que no me llegan las carácteres bien al php, es decir
á,é, ñ,...; sinó que por lo visto el javascript del tablekit serializa
los datos del formulario antes de ponerlos cómo datos en la dirección,
y al hacerlo los convierto en datos del tipo %20, %3DA, ...; entonces
cuando llegan al php por defecto los deserializa (no se si está bien
dicho así) y es cuando me viene el engorro ya que los transforma en
los típicos carácteres extraños Ã, Ó,...; también he probado de hacer
un reemplazo de estos pero no me deja. En cuanto a la codificación del
archivo php, he provado de ponerle un header para que fuera uft-8 y
nada seguía sin ir, también prove después de ponerle un header para
pasarlo a ISO y tampoco funcionó, he provado con el notepad a cambiar
la codificación a ANSI, UTF8 y UTF-8 NOBOM; pero tampoco me fué
mejorque con los anteriores intentos.

Gracias de todos modos, y creeme que la intención cuenta ;-)

Espero que alguien pueda ayudarme,
Gracias de antemano

On 16 sep, 16:45, Edgar Muñoz <garra...@gmail.com> wrote:
> no sé que tan hondo vaya yo a meter las patas con mi consejo, pero espero se
> me abone la buena intención:
>
> no sería bueno probar guardando en la base de datos los caracteres html de
> las tildes, me refiero a los siguiente:
>
> &aacute en vez de á
> &eacute en vez de é
> &iacute en vez de í
> &oacute en vez de ó
> &uacute en vez de ú
> quedo atento a este hilo.
> 2009/9/16 marina <marina.plane...@gmail.com>

Elden

unread,
Sep 17, 2009, 12:32:10 PM9/17/09
to aja...@googlegroups.com
¿Qué biblioteca de javascript estás utilizando? o ¿es código hecho a mano?

Prueba las funciones utf8_encode y utf8_decode cuando te lleguen los datos a tu php

http://www.php.net/manual/en/function.utf8-encode.php

http://www.php.net/manual/en/function.utf8-decode.php

--
Saludos
Elden ( www.elden.com.mx )
{a human being that was given to fly}


2009/9/17 marina <marina....@gmail.com>

marina

unread,
Sep 18, 2009, 4:52:39 AM9/18/09
to Ajax-es
Perdón que me he equivocado el archivo de javascript lo codifiqué a
UTF-8 NOBOM no ha ANSI. Lo siento es que hice tantas pruebas que me he
confundido.

On 17 sep, 18:32, Elden <willy...@gmail.com> wrote:
> ¿Qué biblioteca de javascript estás utilizando? o ¿es código hecho a mano?
>
> Prueba las funciones utf8_encode y utf8_decode cuando te lleguen los datos a
> tu php
>
> http://www.php.net/manual/en/function.utf8-encode.php
>
> http://www.php.net/manual/en/function.utf8-decode.php
>
> --
> Saludos
> Elden (www.elden.com.mx)
> {a human being that was given to fly}
>
> 2009/9/17 marina <marina.plane...@gmail.com>

marina

unread,
Sep 18, 2009, 4:49:03 AM9/18/09
to Ajax-es
Buenas!

Gracias, no conocía estas funciones, pero lo que necesito es que me
lleguen bien, al final convertí el archivo de tablekit a tipo ANSI, y
usando htmlentities, en vez de htmlspecialchars, conseguí que me
conviertiera las comillas bien pero con una barra delante, así que con
replace le quité la barra. De este modo me ha funcionado, aunque es
bastante cutre. Me apunto estas dos funciones y cuando acabe un par de
cosillas urgentes probaré a ver que tal van.

$valor = htmlentities($valor,ENT_QUOTES);

$buscar = array ("\&#039;","\&quot;");
$reemplazar = array ("&#039;","&quot;");

$valor = str_replace($buscar, $reemplazar, $valor);

Espero que le sirva a alguien, si las funciones de utf8 funcionan bien
ya lo os lo comentaré.

Gracias a todos.

On 17 sep, 18:32, Elden <willy...@gmail.com> wrote:
> ¿Qué biblioteca de javascript estás utilizando? o ¿es código hecho a mano?
>
> Prueba las funciones utf8_encode y utf8_decode cuando te lleguen los datos a
> tu php
>
> http://www.php.net/manual/en/function.utf8-encode.php
>
> http://www.php.net/manual/en/function.utf8-decode.php
>
> --
> Saludos
> Elden (www.elden.com.mx)
> {a human being that was given to fly}
>
> 2009/9/17 marina <marina.plane...@gmail.com>
Reply all
Reply to author
Forward
0 new messages