Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Pregunta sobre Cortejamiento para Euro

Estas en el tema de Pregunta sobre Cortejamiento para Euro en el foro de Mysql en Foros del Web. Bueno amigos necesito guardar el signo del euro en mi base de datos. Pero no he podido ya que se transforma a un caracter muy ...
  #1 (permalink)  
Antiguo 02/06/2010, 14:23
Avatar de xalupeao  
Fecha de Ingreso: mayo-2008
Ubicación: Santiago, Chile
Mensajes: 749
Antigüedad: 16 años
Puntos: 12
Pregunta sobre Cortejamiento para Euro

Bueno amigos necesito guardar el signo del euro en mi base de datos. Pero no he podido ya que se transforma a un caracter muy raro. Tengo como cortejamiento utf8_unicode_ci


pero queda este simbolo.

?

..... que cortejamiento debo usar?
__________________
Hosting en Chile en Silverhost - La solución en Hosting en Chile.
  #2 (permalink)  
Antiguo 02/06/2010, 14:35
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 1 mes
Puntos: 300
Respuesta: Pregunta sobre Cortejamiento para Euro

Para escribir el símbolo del euro tienes varias opciones, todas las cuales pasan por cambiar tu charset o codificación. Imagino, por lo que dices, que estás usando latin1, o lo que es lo mismo ISO-8559-1, ANSI, europea occidental, que todos esos nombres recibe. En MySQL es latin1. Pero esa no te permite escribir el símbolo del euro.
Cita:
Cuando llegó el Euro, Microsoft incluyó el caracter del Euro (€) en la posición 128 del Windows-1252 y para MS-DOS creó el CP858, que reemplazaba la i
sin punto (ı) del CP850 por el símbolo del Euro. ISO, por su lado, estandarizó el ISO-8859-15 (también llamado latin9), que reemplazaba algunos dignos de puntuación del ISO-8859-1 por el símbolo del Euro y por algunos caracteres internacionales que faltaban:


€ Š š Ž ž Œ œ Ÿ


Pero claro, si antes decíamos que el ASCII era “anglocéntrico”, todos estos juegos de caracteres que hemos comentado son “latinocéntricos”, ya que al ser de 8 bits, con sólo 255 caracteres posibles como máximo, se dejan fuera a todos los caracteres de idiomas no basados en el latín.
Es una cita sacada de internet. Si quieres escribir el signo del euro, o usas latin9 o cambias a codificación utf8. Yo no he probado latin9, y creo que no existe para MySQL. La mejor forma sería usar una codificación utf8; si creas una nueva base y lo pruebas verás que no da problemas, pero cambiar una base existente a otra con codificación diferente requiere de cierto cuidado.
  #3 (permalink)  
Antiguo 02/06/2010, 14:42
Avatar de xalupeao  
Fecha de Ingreso: mayo-2008
Ubicación: Santiago, Chile
Mensajes: 749
Antigüedad: 16 años
Puntos: 12
Respuesta: Pregunta sobre Cortejamiento para Euro

Cita:
Iniciado por jurena Ver Mensaje
Para escribir el símbolo del euro tienes varias opciones, todas las cuales pasan por cambiar tu charset o codificación. Imagino, por lo que dices, que estás usando latin1, o lo que es lo mismo ISO-8559-1, ANSI, europea occidental, que todos esos nombres recibe. En MySQL es latin1. Pero esa no te permite escribir el símbolo del euro.

Es una cita sacada de internet. Si quieres escribir el signo del euro, o usas latin9 o cambias a codificación utf8. Yo no he probado latin9, y creo que no existe para MySQL. La mejor forma sería usar una codificación utf8; si creas una nueva base y lo pruebas verás que no da problemas, pero cambiar una base existente a otra con codificación diferente requiere de cierto cuidado.
Código MySQL:
Ver original
  1. ALTER TABLE `tabla` CHANGE `campo` `campo` VARCHAR( 25 ) CHARACTER SET utf8 COLLATE utf8_unicode_ci NOT NULL

ya no entra asi ? si no que asi €
__________________
Hosting en Chile en Silverhost - La solución en Hosting en Chile.
  #4 (permalink)  
Antiguo 02/06/2010, 16:16
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 1 mes
Puntos: 300
Respuesta: Pregunta sobre Cortejamiento para Euro

EStás modificando el charset de una tabla, no el de la base. Crea, por ej. con PHPMyAdmin, una nueva base con codificación utf8 y una collation utf8_spanish2_ci, añade una tabla con esa misma codificación utf8. EScribe luego dentro de ella con el signo euro de tu teclado. A ver qué resulta.
  #5 (permalink)  
Antiguo 02/06/2010, 16:59
Avatar de xalupeao  
Fecha de Ingreso: mayo-2008
Ubicación: Santiago, Chile
Mensajes: 749
Antigüedad: 16 años
Puntos: 12
Respuesta: Pregunta sobre Cortejamiento para Euro

tampoco funciona >.<
__________________
Hosting en Chile en Silverhost - La solución en Hosting en Chile.
  #6 (permalink)  
Antiguo 03/06/2010, 12:28
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 1 mes
Puntos: 300
Respuesta: Pregunta sobre Cortejamiento para Euro

Dinos los pasos que sigues, si lo estás haciendo en el servidor o en localhost. Intenta crear una base en localhost llamada euro, la creas con codificación utf8 y collation utf8_spanish2_ci. Luego creas una tabla con un campo. En la collation del campo pones utf8_spanish2_ci. Ahora puedes insertar 25€ en ese campo, pero hazlo con PHPMyAdmin. Dime qué te guarda cuando lo abres con PHPMyAdmin.
  #7 (permalink)  
Antiguo 03/06/2010, 20:45
Avatar de xalupeao  
Fecha de Ingreso: mayo-2008
Ubicación: Santiago, Chile
Mensajes: 749
Antigüedad: 16 años
Puntos: 12
Respuesta: Pregunta sobre Cortejamiento para Euro

sigue igual :B


gracias de todas formas.
__________________
Hosting en Chile en Silverhost - La solución en Hosting en Chile.
  #8 (permalink)  
Antiguo 03/06/2010, 21:08
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Pregunta sobre Cortejamiento para Euro

Cita:
Iniciado por xalupeao Ver Mensaje
tampoco funciona >.<
¿No será que estás confundiendo el código guardado, con la representación del símbolo?
Si el cotejamiento de la tabla es correcto, e incluye el código asignado al Euro, entonces el problema no está en lo que almacena la base, sino en lo que la base recibe o bien lo que la aplicación está interpretando de lo que lee en la base.
En cualquier a de esos casos, el problema estaría en la interpretación que el lenguaje de programación está haciendo y es allí donde deberías revisar.
Verifica qué cotejamiento manejan las interfases E/S
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #9 (permalink)  
Antiguo 04/06/2010, 02:06
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 1 mes
Puntos: 300
Respuesta: Pregunta sobre Cortejamiento para Euro

xalupeao,
eso que te dice gnzsoloyo es totalmente cierto, y probablemente sea eso, que el PHP, el HTML, ambos tal vez, o lo que sea que utilices para cargar los datos, esté interpretando mal lo que recibe o enviando con otra codificación a la base. Pero en lo que se refiere a la base de datos, la solución es usar esa codificación utf8 y la collation adecuada para la tabla y los campos. Lo demás tienes que preguntarlo en los otros foros.

Etiquetas: euro
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 16:40.