Foros del Web » Programando para Internet » PHP »

Simbolos raros en las palabras con tilde ó ñ

Estas en el tema de Simbolos raros en las palabras con tilde ó ñ en el foro de PHP en Foros del Web. Hola: Tengo un problema, haber si me podéis ayudar. Tengo una BD, en la que se insertan los datos a través de una aplicacion de ...
  #1 (permalink)  
Antiguo 15/12/2007, 16:53
 
Fecha de Ingreso: septiembre-2007
Mensajes: 234
Antigüedad: 17 años, 2 meses
Puntos: 1
Pregunta Simbolos raros en las palabras con tilde ó ñ

Hola: Tengo un problema, haber si me podéis ayudar.
Tengo una BD, en la que se insertan los datos a través de una aplicacion de una página web que está hecha con html y php.
Mi problema es que al introducir un dato( que tiene tilde ó ñ) con mi aplicación en la BD, luego cuando muestro estos datos me aparecen una simbolos raros como cuadrados en mitad de las palabras.
¿Alguien sabe como lo puedo solucionar? he mirado y tanto en la BD como en html utilizo la codificacion utf-8
Muchas gracias!!!
  #2 (permalink)  
Antiguo 15/12/2007, 18:25
Avatar de jcxnet  
Fecha de Ingreso: octubre-2005
Ubicación: Perú
Mensajes: 784
Antigüedad: 19 años, 1 mes
Puntos: 56
Re: Simbolos raros en las palabras con tilde ó ñ

Hola,
este problema es común, a muchos nos ocurre, si tienes tu base de datos codificada en utf-8 tienes que tener en cuenta esto:
- establecer el cotejamiento de la base de datos en utf-8
- en la página donde se muestre la información establecer <meta http-equiv="content-type" content="text/html;charset=utf-8">
- antes de almacenar los datos prueba hacer utf8-decode() a los valores ingresados
- cuando recuperes los datos de la base utiliza la instrucción SET NAMES utf8
Espero que te sea de ayuda
__________________
►I'm a devil on the run ♂
Jcxnet.com
*Keep It Simple **
  #3 (permalink)  
Antiguo 16/12/2007, 07:10
 
Fecha de Ingreso: septiembre-2007
Mensajes: 234
Antigüedad: 17 años, 2 meses
Puntos: 1
Re: Simbolos raros en las palabras con tilde ó ñ

Hola gracias!!!! Lo probaré!!
Un saludo!
  #4 (permalink)  
Antiguo 16/12/2007, 15:53
 
Fecha de Ingreso: septiembre-2007
Mensajes: 234
Antigüedad: 17 años, 2 meses
Puntos: 1
Pregunta Re: Simbolos raros en las palabras con tilde ó ñ

hola: HE probado ha poner el utf8-decode(), pero no me funciona. Lo que he puesto es esto: <?php
include "conn.inc.php";
$sql="SELECT nombre FROM titulaciones";
$resultado= mysql_query($sql) or die("<font color=\"#FF0000\"> ERROR EN LA CONSULTA</FONT>".mysql_error());
while($row=mysql_fetch_array($resultado))
{
$var=utf8decode($row[nombre]);
echo $row['$var']."<br>";
}
?>


ambién he probado a poner: utf8-decode(), pero tampco.
Alguien puede sabe qué está mal??
Gracias!!

Última edición por Carol_84; 16/12/2007 a las 16:06
  #5 (permalink)  
Antiguo 16/12/2007, 16:05
Avatar de Marvin
Colaborador
 
Fecha de Ingreso: febrero-2005
Ubicación: global $Chile->Santiago;
Mensajes: 1.991
Antigüedad: 19 años, 9 meses
Puntos: 81
Re: Simbolos raros en las palabras con tilde ó ñ

que yo sepa la funcion esta declarada como utf8_decode();

Suerte
__________________
El que dice "Solo sé que nada sé", esta asumiendo que sabe algo.
Lea las FAQ's!
  #6 (permalink)  
Antiguo 16/12/2007, 16:40
 
Fecha de Ingreso: septiembre-2007
Mensajes: 234
Antigüedad: 17 años, 2 meses
Puntos: 1
Re: Simbolos raros en las palabras con tilde ó ñ

ok, Gracias, ahora ya me funciona!!
  #7 (permalink)  
Antiguo 16/12/2007, 18:31
 
Fecha de Ingreso: septiembre-2007
Mensajes: 234
Antigüedad: 17 años, 2 meses
Puntos: 1
Exclamación Re: Simbolos raros en las palabras con tilde ó ñ

Hola de nuevo :)
Pense, q lo había solucionado del todo, pero no.
Haber he puesto en el fichero en el que selecciono mi BD, despues de la instrucción en la que indico la BD que utilizo:
mysql_query ("SET NAMES 'utf8'");
Y cuando quiero mostrar los datos de mi BD, he puesto:
while($row=mysql_fetch_array($resultado))
{
$var=utf8_encode($row['titulo']);
echo $var."<br>";
}


Y cuando inserto en la BD los datos procedentes de un formulario hago :
$ponencia=utf8_decode($row['ponencia']);
$tipo=utf8_decode($row['tipo']);
$query = "INSERT INTO tipo_ponencia(titulo,tipo) VALUES($ponencia,$tipo)";
.
El problema que tengo es que si en el formulario escribo una palabra con tilde por ejemplo "publicación", en la BD solo me almacena "publicaci", es decir que me almacena la palabra hasta donde está la tilde.

Si la palabra no lleva tilde me funciona perfectamente, pero sino no.
¿Alguien puede decirme cmo puedo solucionarlo?
++Gracias
  #8 (permalink)  
Antiguo 16/12/2007, 18:44
Avatar de Marvin
Colaborador
 
Fecha de Ingreso: febrero-2005
Ubicación: global $Chile->Santiago;
Mensajes: 1.991
Antigüedad: 19 años, 9 meses
Puntos: 81
Re: Simbolos raros en las palabras con tilde ó ñ

Eso es porque la base de datos ya esta definida como utf8... a mi me paso lo mismo.

Para solucionarlo solo saca el utf8_decode() al momento de hacer el insert.

Suerte y nos comentas
__________________
El que dice "Solo sé que nada sé", esta asumiendo que sabe algo.
Lea las FAQ's!
  #9 (permalink)  
Antiguo 17/12/2007, 09:20
 
Fecha de Ingreso: septiembre-2007
Mensajes: 234
Antigüedad: 17 años, 2 meses
Puntos: 1
Re: Simbolos raros en las palabras con tilde ó ñ

Hola de nuevo :)
Ya lo he solucionado.Pongo lo que he hecho, por si le sirve en un futuro a alguien:
Cuando muestro los datos que están en la bd hay que utilizar la función de utf8_decode()


$var1=utf8_decode($row['tipo']);
echo $var1."<br>";


y cuando se va a hacer el Insert en la BD, antes hay que poner:

$var=utf8_encode($_POST['titulacion']);
$var1=utf8_encode($_POST['tipo']);
$query = "INSERT INTO titulaciones(nombre,tipo) VALUES('$var','$var1')";

Bueno pues es así como funciona.
Un saludo!!!
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.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 14:05.