·
miarroba.com
Volviéndome loco con PHP, mySQL y los Acentos
 
Índice de subforos · Espacio WEB · PHP
Foros · Noticias · Buscar · Usuarios · Fisgona
Mensaje Autor 
#1 ·
Volviéndome loco con PHP, mySQL y los Acentos

Estoy trabajando en un registro a la base de datos y tengo problemas con los acentos. He estado investigando por internet y aconsejan que cambies la codificación a UTF-8 (y eso he hecho) y que definas las variables de una manera determinada.

El registro consta de tres partes:

registro.php el formulario que envía los datos donde he puesto:
<meta http-equiv="content-type" content="text/html; UTF-8" />

funciones.js que contiene el envío ajax:
peticion.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; UTF-8');

Y inscribir.php donde se registra a la base de datos:
header('Content-Type: text/html; UTF-8');

Por supuesto, también he modificado los campos de la base de datos. También había probado con latin1 y con el por defecto: iso-8859-1 (aunque es cierto que en estos dos casos había olvidado modificar funciones.js). Y no hay forma.


Por otra parte, aconsejan definir las variables como:
$nombre=stripslashes(htmlentities(strtolower($_POST['nombre'])));
Antes las tenía como: $nombre=mysql_real_escape_sting(strtolower($_POST['nombre']));


Con ninguno de los cambios he podido cambiar nada. Sigue guárdandome carácteres extraños. He investigado y si hago un print $nombre; antes de insertar los datos, ya están mal codificados. ¿Alguna idea para solucionar el dichoso problema?

 

 
Gracias de antemano.

 





Editado por EffectedCardEffectedCard, Lunes, 13 de Julio de 2009, 00:46
EffectedCardEffectedCard
Moderador
Moderador

Haz clic para ver el perfil del usuario

Usuario PRO Usuario PRO
Mensajes: 3.227
Desde: 20/May/2003
12/Jul/2009 21:42 GMT+1
#2 ·
RE: Volviéndome loco con PHP, mySQL y los Acentos

Escrito originalmente por EffectedCard

registro.php el formulario que envía los datos donde he puesto:
<meta http-equiv="content-type" content="text/html; UTF-8" />


 

 


Has probado poniendo el juego de caracteres. De esta forma:

<meta http-equiv="conten-type" content="text/html; charset=UTF-8" />

A ver que tal. Saludos!.


aerialss88aerialss88
Machacateclados
Machacateclados

Haz clic para ver el perfil del usuario
Mensajes: 269
Desde: 13/Ene/2009
12/Jul/2009 22:42 GMT+1
#3 ·
RE: Volviéndome loco con PHP, mySQL y los Acentos

Pues al parecer ha mejorado la cosa. Vaya error más gilipoyas. Parece que la cosa va bien, pero no del todo; lo estoy revisando.

¡Muchas Gracias!

 

 

EDITO Y AÑADO:

¿Por qué si en un sitio funciona perfectamente, en el otro no?

http://effectedcard.webcindario.com/bar/adm_comensales.php?pag=1

http://effectedcard.webcindario.com/bar/registro.php

La codificación en ambos es UTF-8. Ambos lo tienen doblemente definido como:

 

<? header('Content-Type: text/html; charset=UTF-8'); ?>
 

<? header('Content-Type: text/html; charset=UTF-8'); ?>

y

<meta http-equiv="content-type" content="text/html; charset=UTF-8" />

Ambos sacan los mismos datos de la misma tabla. En el segundo fichero sólo saco un resultado, en el primero saco varios.

 





Editado por EffectedCardEffectedCard, Lunes, 13 de Julio de 2009, 01:32
EffectedCardEffectedCard
Moderador
Moderador

Haz clic para ver el perfil del usuario

Usuario PRO Usuario PRO
Mensajes: 3.227
Desde: 20/May/2003
13/Jul/2009 00:42 GMT+1
#4 ·
RE: Volviéndome loco con PHP, mySQL y los Acentos

Parece que le sacas ya mal. En la base de datos seguro que esta bien. Yo probaria a hacer una .php que tan solo te saque un registro, y te le muestre, a ver que tal va...


NoSetup.orgNoSetup.org
@man / @woman
@man / @woman

Haz clic para ver el perfil del usuario

Usuario PRO Usuario PRO
Mensajes: 26.962
Desde: 01/Mar/2003
13/Jul/2009 20:41 GMT+1
#5 ·
RE: Volviéndome loco con PHP, mySQL y los Acentos

Yo emplee lo siguiente:

<?php 

header('Content-Type: text/xml');
 echo '<?xml version="1.0" encoding="UTF-8"?>';

?>

Pruebalo a ver que tal te va. Aunque claro yo en ese archivo extraia los datos ya correctos...no se si te servira. Pero bueno , por intentar no se pierde nada. Saludos!.




Editado por aerialss88aerialss88, Lunes, 13 de Julio de 2009, 21:38
aerialss88aerialss88
Machacateclados
Machacateclados

Haz clic para ver el perfil del usuario
Mensajes: 269
Desde: 13/Ene/2009
13/Jul/2009 21:37 GMT+1
#6 ·
RE: Volviéndome loco con PHP, mySQL y los Acentos

Sí, si el error tiene que estar en registro.php, pero no lo entiendo.

Hay la misma forma de "codificar" que en http://effectedcard.webcindario.com/bar/adm_comensales.php?pag=1 y ahí funciona bien. Lo cual hace pensar que en la base de datos está todo correcto. Voy a probar darle al config.php y a funciones.php la misma codificación por si fuera tema de que, al hacer el include, cambiaran la codificación.

 

aerials88, tu método no ha funcionado.

 

 

Gracias a ambos en cualquier caso. Voy a probar eso y digo algo.

 

 

EDITO: No, eso tampoco ha funcionado. Todo sigue igual. ¿Más ideas? =S





Editado por EffectedCardEffectedCard, Lunes, 13 de Julio de 2009, 22:43
EffectedCardEffectedCard
Moderador
Moderador

Haz clic para ver el perfil del usuario

Usuario PRO Usuario PRO
Mensajes: 3.227
Desde: 20/May/2003
13/Jul/2009 22:40 GMT+1
#7 ·
RE: Volviéndome loco con PHP, mySQL y los Acentos

Todo claro y solucionado. Si lo guardo con htmlentities, hay que sacarlo con html_entity_decode. En uno sí lo había puesto, en el otro se me ha pasado. ¡Gracias y lo siento!





Editado por EffectedCardEffectedCard, Lunes, 13 de Julio de 2009, 22:54
EffectedCardEffectedCard
Moderador
Moderador

Haz clic para ver el perfil del usuario

Usuario PRO Usuario PRO
Mensajes: 3.227
Desde: 20/May/2003
13/Jul/2009 22:52 GMT+1
Índice de subforos · Espacio WEB · PHP
Temas similares
Asunto Autor#VisitasÚltima respuesta
Volviéndome loco con PHP, mySQL y los Acentos12/Jul/2009, 21:24
EffectedCardEffectedCard
08No hay respuestas
como hacer un foro en utilizando php y mysql?20/Nov/2009, 22:27
romansanromansan
123920/Nov/2009, 23:16
aerialss88aerialss88 Ir al último mensaje del tema
Convertir tablas MYSQL a PDF con PHP21/Oct/2009, 00:04
eab1980eab1980
237022/Oct/2009, 04:15
eab1980eab1980 Ir al último mensaje del tema
como hacer una consulta a mysql en php18/Oct/2009, 06:24
nenecesarnenecesar
240618/Oct/2009, 18:32
nenecesarnenecesar Ir al último mensaje del tema
extensiones pdo y pdo_mysql, para php09/Sep/2009, 23:10
veytrixveytrix
224209/Sep/2009, 23:33
veytrixveytrix Ir al último mensaje del tema
Opciones:
Versión imprimible del tema
Subscríbete a este tema
Date de baja de este tema
Ir al subforo:  

TU NO PUEDES Escribir nuevos temas en este foro
TU NO PUEDES Responder a los temas en este foro
TU NO PUEDES Editar tus propios mensajes en este foro
TU NO PUEDES Borrar tus propios mensajes en este foro
Todas las fechas y horas son GMT+1. Ahora son las 20:48
Miarroba Networks, S.L. C/ 18 de Julio, 21 Bajo, 39610 Astillero (CANTABRIA) - CIF B-39512736
Inscrita en el Registro Mercantil de Cantabria, tomo 743, folio 161, libro 0, hoja S-12428, Inscripción 1ª