Foros del Web » Programando para Internet » PHP »

Caracteres estraños

Estas en el tema de Caracteres estraños en el foro de PHP en Foros del Web. Soy nuevo en esto y no se mucho actualmente, pero tengo un problema que no se como resolverlo. Cuando una persona digita en un escrito ...
  #1 (permalink)  
Antiguo 28/09/2010, 09:25
Avatar de JJrb3  
Fecha de Ingreso: septiembre-2010
Mensajes: 51
Antigüedad: 13 años, 7 meses
Puntos: 2
Busqueda Caracteres estraños

Soy nuevo en esto y no se mucho actualmente, pero tengo un problema que no se como resolverlo. Cuando una persona digita en un escrito por un textarea al momento de publicarlo sale un caracter raro en forma de rombo. si es:

񿬬 sale caracteres raros siempre.

Hay algun metodo para quitarlos y que salgan los caracteres normales???
Gracias por su atencion.
Saludos.
  #2 (permalink)  
Antiguo 28/09/2010, 09:31
 
Fecha de Ingreso: julio-2008
Mensajes: 208
Antigüedad: 15 años, 10 meses
Puntos: 5
Respuesta: Caracteres estraños

Chequea 2 cosas:

1)Que juego de caracteres tienes definido en la tabla donde se guardan los datos.
2)Que juego de caracteres usas en tus paginas (para mostrarlas).

Para que te acepte ñ y tildes usa UTF-8 como juego de caracteres.

Saludos.
  #3 (permalink)  
Antiguo 28/09/2010, 09:33
 
Fecha de Ingreso: julio-2006
Ubicación: sevilla
Mensajes: 251
Antigüedad: 17 años, 10 meses
Puntos: 5
Respuesta: Caracteres estraños

Hola veamos supongo que estas trabajndo con php mysql, tienes que tener en cuenta una cosa muy importante y es la codificación en la que trabajas, si estas empleando utf-8 , la base de datos debe estar en utf-8 tambien y si estan en latin-iso en el html tambien debes estar en latin-iso en la base de datos. D esta forma evitas los problemas de codificación que dices.

Lo mejor que puedes hacer si el proyecto no esta muy avanzado en fijarte y cambiar la codificación a utf8 que es lo standar a dia de hoy. Si no puedes porque es un proyecto antiguo pues pude transformar la salida de la consulta mysql con la funcion de php htmlentities que transforma a simbolos html todo los acentos y ñ.
  #4 (permalink)  
Antiguo 29/09/2010, 10:10
Avatar de vicmx  
Fecha de Ingreso: junio-2008
Ubicación: México
Mensajes: 59
Antigüedad: 15 años, 11 meses
Puntos: 3
Respuesta: Caracteres estraños

Te puedes leer esta pequeña guía y te ayudará mucho a saber por que pone esos caracteres raros:
http://cubos.info/story/usando-el-ch...f-en-php-mysql
Suerte!
  #5 (permalink)  
Antiguo 29/09/2010, 11:14
Avatar de loncho_rojas
Colaborador
 
Fecha de Ingreso: octubre-2008
Ubicación: En el mejor lugar del mundo
Mensajes: 2.704
Antigüedad: 15 años, 6 meses
Puntos: 175
Respuesta: Caracteres estraños

Te aconsejo que uses una version mas reciente de AMP (Apache - Mysql - PHP) pues te permite modificar el CHARSET de la tabla de tu BD y el Cotejamiento o COLLATE del mismo al crearlo.. te puede servir bajarte el WAMP server e instalarlo.

Segundo, si vas a permitir que un usuario introduzca texto en su sitio asegurate de transformar los acentos y caracteres especiales en formato legible, puede ser en HTML.. aqui he modificado una funcion que transforma caracteres en algo legible para html:

Código PHP:
function reemplazo($nombre_gal) {



//Rememplazamos caracteres especiales latinos

$find = array('á''é''í''ó''ú''ñ');// reemplazamos los acentos y ñ, ojo solo las minusculas
//si quieres las mayusculas, debes crear unos arreglos similares

$repl = array('á''é''í''ó''ú''&ntilde');// por caracteres HTML, puedes agregar mas si quieres

$nombre_gal str_replace ($find$repl$nombre_gal);

// Añadimos otros caracteres

$find = array('&''\"');
$repl = array('&''"');
$nombre_gal str_replace ($find$repl$nombre_gal);

// Eliminamos y Reemplazamos demás caracteres especiales


return $nombre_gal;


para aplicarlo solo debes llamar a la funcion que contendra el String que escribe el usuario

Código PHP:
$nombre_gal$_POST['mensaje'];

//e inserto esto en la BD

$texto=reemplazo($nombre_gal);

$sql "INSERT INTO tu_tabla (mensaje) VALUES ('".$texto."')"
te recomiendo usar un editor WYSINGYN, como por ejemplo nicEDIT, que te permite generar codigo HTML desde tu textarea

Otra opcion, no tan eficiente es usar

<?php echo htmlspecialchars($_POST['nombre']); ?> para cargar carateres especiales HTML a tu BD o para mostrarlas

espero te oriente un poco mas
__________________
Ayudo con lo que puedo en el foro, y solo en el foro.. NO MENSAJES PRIVADOS.. NO EMAILS NI SKYPE u OTROS.

Antes de hacer un TOPICO piensa si puedes hallarlo en Google o en el Buscador del Foro...
  #6 (permalink)  
Antiguo 27/10/2010, 09:39
Avatar de JJrb3  
Fecha de Ingreso: septiembre-2010
Mensajes: 51
Antigüedad: 13 años, 7 meses
Puntos: 2
Respuesta: Caracteres estraños

Bueno hice el que me digito loncho_rojas, cuando lo inserta a la base de datos nada mas corrige el del & pero no corrige otro. No se si exactamente tiene que aparecer el &aacute; en la base de datos pero me sale es "á" el que salio bien fue el de & &amp suponiendo que esa esta bien me imagino que las demas tambien porque no me ha lansado caracteres raros hasta el momento, solo tengo que asignarle mas caracteres que usan los usuarios. Gracias por la ayuda me sirvio de mucho ^^

Saludos.
JJrb3...
  #7 (permalink)  
Antiguo 27/10/2010, 09:48
Avatar de vicmx  
Fecha de Ingreso: junio-2008
Ubicación: México
Mensajes: 59
Antigüedad: 15 años, 11 meses
Puntos: 3
Respuesta: Caracteres estraños

Cita:
Iniciado por JJrb3 Ver Mensaje
Bueno hice el que me digito loncho_rojas, cuando lo inserta a la base de datos nada mas corrige el del & pero no corrige otro. No se si exactamente tiene que aparecer el &aacute; en la base de datos pero me sale es "á" el que salio bien fue el de & &amp suponiendo que esa esta bien me imagino que las demas tambien porque no me ha lansado caracteres raros hasta el momento, solo tengo que asignarle mas caracteres que usan los usuarios. Gracias por la ayuda me sirvio de mucho ^^

Saludos.
JJrb3...
Estimado usuario de FW si te dispusieras unos minutos a leer la guía que te recomendé, entenderías mejor por que pasa todo esto, yo estuve en tu misma situación y decidí acabar con las dudas, una vez más tomate el tiempo y lee la guía te va a servir de mucho, un saludo.

http://cubos.info/story/usando-el-ch...f-en-php-mysql
  #8 (permalink)  
Antiguo 27/10/2010, 12:42
Avatar de JJrb3  
Fecha de Ingreso: septiembre-2010
Mensajes: 51
Antigüedad: 13 años, 7 meses
Puntos: 2
Respuesta: Caracteres estraños

Ok la leere, gracias =P

Etiquetas: caracteres
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 01:55.