Foros del Web » Programando para Internet » PHP »

Problema con caracteres al aplicar funcion?

Estas en el tema de Problema con caracteres al aplicar funcion? en el foro de PHP en Foros del Web. Hola gente, tengo un problema, con el tema de los caracteres (salen caracteres raros cuando se ingresa una Ñ o un tilde),y bueno, es asi ...
  #1 (permalink)  
Antiguo 25/02/2012, 16:49
Avatar de tata009  
Fecha de Ingreso: septiembre-2008
Ubicación: En mi casa
Mensajes: 426
Antigüedad: 15 años, 7 meses
Puntos: 3
Problema con caracteres al aplicar funcion?

Hola gente, tengo un problema, con el tema de los caracteres (salen caracteres raros cuando se ingresa una Ñ o un tilde),y bueno, es asi , en mi web tengo un sistema de publicaciones, utilizo dos funciones para mostrar los registros , una es "parsear" que lo que hace es parsear, valga la redundancia, los codigos para pasarlos a etiquetas html , pero despues cuando le paso la funcion de seguridad donde hago filtros me salen caracteres raros como por ejemplo si escribo "ñññ" sale "ñññ" , y probe y el problema es cuando le paso esta funcion a la variable:

Código PHP:
<?
function seguridad($mensaje){
    
$mensaje htmlentities($mensaje); // Evita introducción código HTML
    
$mensaje mysql_real_escape_string($mensaje);
    
$mensaje stripslashes($mensaje);
    return 
$mensaje;
}   
?>

Utilizo como codificacion de la pagina UTF-8, nose si sera relevante, pero no entiendo por qué cuando le paso la funcion seguridad se me arruinan los caracteres :S


Desde ya muchas gracias!
__________________
SI pones un CD de MIcrosoft al reves aparecen mensajes satanicos pero si lo pones a la derecha PEOR SE TE INSTALA WINDOWS!!!!
Para webmasters e informaticos
  #2 (permalink)  
Antiguo 25/02/2012, 18:32
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 3 meses
Puntos: 288
Respuesta: Problema con caracteres al aplicar funcion?

y usa utf8_encode()
  #3 (permalink)  
Antiguo 25/02/2012, 19:11
Avatar de tata009  
Fecha de Ingreso: septiembre-2008
Ubicación: En mi casa
Mensajes: 426
Antigüedad: 15 años, 7 meses
Puntos: 3
Respuesta: Problema con caracteres al aplicar funcion?

Probe ya con utf8_encode() y utf8_decode() y nadaa me siguen saliendo los caracteres raros :S
__________________
SI pones un CD de MIcrosoft al reves aparecen mensajes satanicos pero si lo pones a la derecha PEOR SE TE INSTALA WINDOWS!!!!
Para webmasters e informaticos
  #4 (permalink)  
Antiguo 25/02/2012, 19:16
Avatar de tata009  
Fecha de Ingreso: septiembre-2008
Ubicación: En mi casa
Mensajes: 426
Antigüedad: 15 años, 7 meses
Puntos: 3
Respuesta: Problema con caracteres al aplicar funcion?

Hola, ahora haciendo eso, si escribo "áááááa" me sale "&Atilde;&iexcl;&Atilde;&iexcl;&Atilde;&iexcl;&Ati lde;&iexcl;a" , y no ejecuta el codigo html , deberia ejecutarlo, no?
__________________
SI pones un CD de MIcrosoft al reves aparecen mensajes satanicos pero si lo pones a la derecha PEOR SE TE INSTALA WINDOWS!!!!
Para webmasters e informaticos
  #5 (permalink)  
Antiguo 25/02/2012, 19:17
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 3 meses
Puntos: 288
Respuesta: Problema con caracteres al aplicar funcion?

y lo hiciste asi:
$texto = "Ñandú";
$texto=utf8_encode($texto);
echo utf8_decode($texto);
  #6 (permalink)  
Antiguo 25/02/2012, 19:29
Avatar de tata009  
Fecha de Ingreso: septiembre-2008
Ubicación: En mi casa
Mensajes: 426
Antigüedad: 15 años, 7 meses
Puntos: 3
Respuesta: Problema con caracteres al aplicar funcion?

Mira , yo lo tengo asi:

En vistaprevia.php (que lo hago en ajax en la misma pagina)
Código PHP:
mysql_query("set names 'utf8'");

$mensaje parsear($_POST[mensaje]);

$mensaje utf8_decode($mensaje);

$mensaje seguridad($mensaje);

echo 
$mensaje
Ahi sale perfecto!

Pero despues se registra maal, y la pagina de registro es esta que ya no es en ajax:

Agregar.php

Código PHP:

$tags 
seguridad($_POST[tags]);
$nombre seguridad($_POST[subject]);
$mensaje utf8_encode($_POST[mensaje]);
$fecha date("Y-m-d G:i:s");



mysql_query("INSERT INTO posts (nombre, mensaje, tags, nick, id_usuario, fecha, categoria, avatar, lecturas, puntos) VALUES ('$nombre', '$mensaje', '$tags', '$_COOKIE[usuario]', '$_COOKIE[id]', '$fecha', '$_POST[categorias]', '$_COOKIE[avatar]', '0', '0')") or die(mysql_error()); 
Y ya ahi voy a la BD y el registro esta mal osea teoricamente lo estoy codificando mal a la hora de guardarlo no? pero cual es el error? me canse de buscarlo :S
__________________
SI pones un CD de MIcrosoft al reves aparecen mensajes satanicos pero si lo pones a la derecha PEOR SE TE INSTALA WINDOWS!!!!
Para webmasters e informaticos
  #7 (permalink)  
Antiguo 25/02/2012, 19:32
Avatar de tata009  
Fecha de Ingreso: septiembre-2008
Ubicación: En mi casa
Mensajes: 426
Antigüedad: 15 años, 7 meses
Puntos: 3
Respuesta: Problema con caracteres al aplicar funcion?

listoo gracias maestro, nose porque tuve que poner solamente decode :/ jeje bueno saludos!
__________________
SI pones un CD de MIcrosoft al reves aparecen mensajes satanicos pero si lo pones a la derecha PEOR SE TE INSTALA WINDOWS!!!!
Para webmasters e informaticos

Etiquetas: caracteres, html, mysql, registro, variables
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 00:07.