Foros del Web » Programando para Internet » PHP »

Mi bd no acepta tildes ni ñ

Estas en el tema de Mi bd no acepta tildes ni ñ en el foro de PHP en Foros del Web. Hola a todos!!!, bueno lo que me pasa es que mi base de datos no está aceptando tíldes. Busqué en google y en fdw y ...
  #1 (permalink)  
Antiguo 07/11/2012, 14:26
Avatar de xarmagedonx  
Fecha de Ingreso: marzo-2009
Mensajes: 360
Antigüedad: 15 años, 8 meses
Puntos: 29
Mi bd no acepta tildes ni ñ

Hola a todos!!!, bueno lo que me pasa es que mi base de datos no está aceptando tíldes.

Busqué en google y en fdw y probé distintas opciones, pero ninguna me da resultado, la que no apliqué es la de los 8 (en mi caso 16) replace porque no funcionaría en mi código.

Los campos y la tabla de la base de datos los tengo en:

Cita:
utf8_spanish_ci
Y luego de la conección tengo el siguiente código:

Código MySQL:
Ver original
  1. mysql_query("SET names utf8");

Estos son algunos ejemplos de lo que pasa:

Cita:
Introducción
literatura española
área
¿Cómo logro que me acepte los tíldes y ñ?.

Saludos y gracias!!!!
  #2 (permalink)  
Antiguo 08/11/2012, 05:39
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 8 meses
Puntos: 574
Respuesta: Mi bd no acepta tildes ni ñ

ó ñ á eso son html entities no te los va a traducir ninguna configuración debes pasar los carácteres....

ó ó ñ ñ á á
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.
  #3 (permalink)  
Antiguo 08/11/2012, 06:52
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Mi bd no acepta tildes ni ñ

En otras palabras, como te dice quimfv, estás confundiendo el HTML con el SQL...
Hay bastantes ejemplos en el foro de PHP al respecto, si ese es el lenguaje usado.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #4 (permalink)  
Antiguo 08/11/2012, 11:03
Avatar de xarmagedonx  
Fecha de Ingreso: marzo-2009
Mensajes: 360
Antigüedad: 15 años, 8 meses
Puntos: 29
Respuesta: Mi bd no acepta tildes ni ñ

Gracias por las respuestas, no lo había posteado en php porque creí que se podía solucionar mediante mysql.

Seguiré revisando para ver si logro dar con la solución.

Saludos!!
  #5 (permalink)  
Antiguo 08/11/2012, 11:07
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Mi bd no acepta tildes ni ñ

Si quieres te paso el post al Foro de PHP...
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #6 (permalink)  
Antiguo 08/11/2012, 15:46
Avatar de xarmagedonx  
Fecha de Ingreso: marzo-2009
Mensajes: 360
Antigüedad: 15 años, 8 meses
Puntos: 29
Respuesta: Mi bd no acepta tildes ni ñ

Sí, no encontré una solución funcional, probé con distintas posibles soluciones pero no funciono.

Gracias!!
  #7 (permalink)  
Antiguo 09/11/2012, 11:58
Avatar de xarmagedonx  
Fecha de Ingreso: marzo-2009
Mensajes: 360
Antigüedad: 15 años, 8 meses
Puntos: 29
Respuesta: Mi bd no acepta tildes ni ñ

El tema de los replace, acabo de revisar pero es para asp solamente.

Saludos
  #8 (permalink)  
Antiguo 09/11/2012, 12:24
Avatar de jandrogdz  
Fecha de Ingreso: julio-2012
Ubicación: public $Guadalajara
Mensajes: 397
Antigüedad: 12 años, 4 meses
Puntos: 12
Respuesta: Mi bd no acepta tildes ni ñ

Que tal mi buen

Yo he podido solucionar eso de esta forma

primero donde hagas tu conexion en la siguiente linea ejecuta esta consulta

Código MySQL:
Ver original
  1. mysql_query("SET NAMES 'utf8'");

despues el cotejamiento de la base de datos debe de ser:
Código MySQL:
Ver original
  1. utf_unicode_ci

y el de los campos string debe de ser:
Código MySQL:
Ver original
  1. utf8_spanish_ci

De esta manera es como solucione mi problema
Espero te sirva
__________________
Lo imposible solo cuesta un poco mas
  #9 (permalink)  
Antiguo 09/11/2012, 14:40
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años, 7 meses
Puntos: 406
Respuesta: Mi bd no acepta tildes ni ñ

Debes presentar mas atención a las respuestas enviadas, @gnzsoloyo ya te respondió que es lo que esta pasando, tu problema no es con la base de datos, es con los daton a insertar, no se de donde obtienes los datos (textos) que estas insertando, pero una de dos, o usas htmlentitites para convertir caracteres especiales a sus entidades HTML o estas guardando código HTML directamente el cual ya ah sido tratado y convertido los caracteres a entidades HTML, en cualquier caso, si deseas guardar los datos con los caracteres originales debes pasar el texto por html_entity_decode() y después insertarlo en la DB...

Se me olvidaba, @jandrogdz ese es solución para problemas con codificación lo cual este NO es el caso...
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)
  #10 (permalink)  
Antiguo 10/11/2012, 10:59
Avatar de xarmagedonx  
Fecha de Ingreso: marzo-2009
Mensajes: 360
Antigüedad: 15 años, 8 meses
Puntos: 29
Respuesta: Mi bd no acepta tildes ni ñ

Hola, gracias por la respuesta. Leí lo que escribió gnzsoloyo por eso lo cambiamos a PHP, probé html_entity_decode() pero no logro solucionarlo.

La función de mi código es extraer la descripción y titulo de una web, y luego añadirlo a la BD.

Logré hacerlo funcionar en el título, pero no en la descripción, este es el código que utilizo:
Código PHP:
Ver original
  1. if (empty($descripcion)){
  2. html_entity_decode(obtenerMetaDescription($html), ENT_QUOTES, 'UTF-8');
  3.     }

Código PHP:
Ver original
  1. function obtenerMetaDescription($text) {
  2.         $text = strip_tags($text);
  3.         $text = trim($text);
  4.         $text = substr($text, 0, 247);
  5.         return $text."...";
  6.     }
  #11 (permalink)  
Antiguo 11/11/2012, 07:42
 
Fecha de Ingreso: agosto-2011
Mensajes: 2
Antigüedad: 13 años, 3 meses
Puntos: 0
Respuesta: Mi bd no acepta tildes ni ñ

Prueba creando un $text = html_entity_decode($text, ENT_QUOTES, 'UTF-8');

cuentame si te ha funcionado
  #12 (permalink)  
Antiguo 11/11/2012, 09:15
Avatar de xarmagedonx  
Fecha de Ingreso: marzo-2009
Mensajes: 360
Antigüedad: 15 años, 8 meses
Puntos: 29
Respuesta: Mi bd no acepta tildes ni ñ

Hola, gracias por la respuesta pero no me funciono, leí que con utf8_decode o utf8_encode debería funcionar pero sigue en lo mismo.

Realmente no le estoy encontrando la solución.

Etiquetas: bd, sql, tabla, tildes, aceptar, campos
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 07:54.