Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   PHP (https://www.clubdelphi.com/foros/forumdisplay.php?f=15)
-   -   insertar letras acentuadas en db.. (https://www.clubdelphi.com/foros/showthread.php?t=52488)

foetus 22-01-2008 20:53:49

insertar letras acentuadas en db..
 
Saludos...

mi problema es que tengo un campo en una base de datos de tipo longText, en este campo aveces se necesita insertar letras acentuadas, Ñs, etc...

probe con las funciones utf8_encode() & utf8_decode(), aunque aun no tengo muy claro el concepto de las dos. en fin necesito saber como puedo almacenar este tipo de caracteres en mi campo de texto y como haces que se visualicen correctamente al momento de mostrar el contenido del campo...:confused:

dec 22-01-2008 20:59:02

Hola,

Yo no soy un experto, pero, puedo contarte un poco mi experiencia, por otro lado varias veces referida en estos foros. El asunto estriba en que tanto el la codificación de caracteres del "script", como la salida del servidor, como la codificación de caracteres de la base de datos, han de coincidir.

Por ejemplo, en mis proyectos, procuro que en todo caso se trabaje con "UTF-8" y, de esa manera, no tengo ningún problema con caracteres especiales (?) como los que mencionas. Así pues, esta codificación ha de usarse para todo lo dicho, de modo que te evitas los problemas que mencionas. No sé si te sirve de algo o qué.

Emilio 22-01-2008 21:07:36

Deduzco por estar en el foro PHP que tu base de datos es MySQL.

Debes asegurarte que el cotejamiento de la tabla sea el que corresponde para acentos eñes etc.. uno bueno es latin1_spanish_ci, aunque otros también sirven.

Para el tema de guardar y mostrar datos, mírate las funciones, addslashes() y stripslashes().

Suerte.

foetus 23-01-2008 00:30:58

si lo que dices es que en los campos de la base de datos, los ponga con codificacion utf8, mas o menos te entiendo dec, hice algo asi, y no he tenido que utilizar funciones como addslashe() o ninguna otra hasta ahora, solo lo almaceno tal y como es dijitado.

lucasarts_18 23-01-2008 03:41:47

Cita:

Empezado por foetus (Mensaje 260141)
si lo que dices es que en los campos de la base de datos, los ponga con codificacion utf8, mas o menos te entiendo dec, hice algo asi, y no he tenido que utilizar funciones como addslashe() o ninguna otra hasta ahora, solo lo almaceno tal y como es dijitado.

No me queda claro si te funciona con lo que dice Dec, pero referente a lo de emilio debería funcionarte sin problemas, yo lo uso de esa forma y hasta ahora no he tenido problemas, aunque mis usuarios son benevolos y no andan ensuciando mi base de datos...... :)

Hasta Luego .-

foetus 23-01-2008 14:05:52

ok lucasarts_18. dices que cuando vaya a guardar algo en mi base de datos use addslashes($cadena); y cuando lo vaya a imprimir use stripslashes($cadena); ???

ya intente eso, sirvio pero no me funciono del todo, tratare de probarlo de nuevo...;)

reevil 23-01-2008 16:37:50

puedes probar tambien con htmlentities();
http://www.php.net/htmlentities

foetus 23-01-2008 16:52:05

muchas gracias reevil, eh solucionado mi problema aunque no con
htmlentities(), si no con html_entity_decode(),.

Emilio 24-01-2008 00:23:04

Cita:

Empezado por foetus (Mensaje 260261)
muchas gracias reevil, eh solucionado mi problema aunque no con
htmlentities(), si no con html_entity_decode(),.

Pues para ir bien tendrás que jugar con ambas, estuve casi por añadirlas a las otras, pero como hablabas de eñes y acentos, imagine que tenías también algún que otro apostrofe, que tanta lata dan, así que fraseando a delphi.com.ar

Cita:

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.


La franja horaria es GMT +2. Ahora son las 17:52:41.

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