Foros del Web » Programando para Internet » PHP »

Problemas con los acentos,ñ... en las consultas PHP

Estas en el tema de Problemas con los acentos,ñ... en las consultas PHP en el foro de PHP en Foros del Web. Hola a todos, estoy desarrollando una aplicación en PHP y MySql. En MySql tengo datos con acentos,'ñ' y espacios en blanco. Cuando hago una consulta ...
  #1 (permalink)  
Antiguo 05/04/2008, 03:22
 
Fecha de Ingreso: marzo-2008
Mensajes: 119
Antigüedad: 16 años
Puntos: 0
Pregunta Problemas con los acentos,ñ... en las consultas PHP

Hola a todos,

estoy desarrollando una aplicación en PHP y MySql. En MySql tengo datos con acentos,'ñ' y espacios en blanco. Cuando hago una consulta en phpmyadmin, incluyendo acentos,'ñ' o espacios en blanco,no tengo ningún problema.

Pero cuando recojo los datos de un formulario, para utilizarlos en la consulta del correspondiente fichero .php, si pongo acentos...no me hace nada. Sin embargo si busco sin acentos sí.

Además he podido comprobar, que el formulario recoje bién los datos( con acentos...)

¿Alguién sabe que es lo que pasa?
  #2 (permalink)  
Antiguo 05/04/2008, 06:07
DMR
 
Fecha de Ingreso: noviembre-2003
Mensajes: 105
Antigüedad: 20 años, 5 meses
Puntos: 0
Re: Problemas con los acentos,ñ... en las consultas PHP

Me pasa lo mismo

Mi post: http://www.forosdelweb.com/f18/problema-con-utf8-includes-572725/
  #3 (permalink)  
Antiguo 05/04/2008, 09:07
 
Fecha de Ingreso: marzo-2008
Mensajes: 119
Antigüedad: 16 años
Puntos: 0
Re: Problemas con los acentos,ñ... en las consultas PHP

Pues si que estamos buenos.

Bueno si consigo resolverlo,lo notificaré.

Hasta entoces, suerte.
  #4 (permalink)  
Antiguo 05/04/2008, 14:04
Avatar de Carxl
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: Bogotá
Mensajes: 2.993
Antigüedad: 17 años, 8 meses
Puntos: 70
De acuerdo Re: Problemas con los acentos,ñ... en las consultas PHP

Hola

Con un poco de búsqueta en google, podrán solucionarlo. O sin ir tan lejos...

Saludos

Espero les sirva
__________________
Hay 10 tipos de personas, los que entienden binario y los que no. (Anónimo)
www.programandoweb.com
  #5 (permalink)  
Antiguo 06/04/2008, 06:37
DMR
 
Fecha de Ingreso: noviembre-2003
Mensajes: 105
Antigüedad: 20 años, 5 meses
Puntos: 0
Re: Problemas con los acentos,ñ... en las consultas PHP

de todos modos no es solucion para mi... mi problema no es el de la base de datos, es el de los includes...
  #6 (permalink)  
Antiguo 06/04/2008, 07:16
 
Fecha de Ingreso: noviembre-2005
Mensajes: 222
Antigüedad: 18 años, 5 meses
Puntos: 2
Re: Problemas con los acentos,ñ... en las consultas PHP

grabad los archivos con codificación UTF, en lugar de la de windows occidental.

Con el notepad es sencillo.
  #7 (permalink)  
Antiguo 07/04/2008, 10:22
 
Fecha de Ingreso: diciembre-2007
Mensajes: 42
Antigüedad: 16 años, 4 meses
Puntos: 0
Re: Problemas con los acentos,ñ... en las consultas PHP

Que tal, espero esto les sirva:

la bronca es una incompatibilidad por parte de PHP con el manejo de archivos UTF-8 que provoca que los primeros bytes de un archivo con dicha codificacion, sean interpretados como datos por el servidor web, por lo cual los envia al navegador del cliente y este los malintepreta como caracteres ANSI y eso es lo que vemos la forma de los famosos caracteres raros.

En fin, la solucion consta de los siguientes pasos:

1. Todos los archivos con codigo PHP deben ser guardados con codificacion UTF-8 sin BOM (Byte Order Mark) que son precisamente los primeros bytes que mencione anteriormente. Para guardar los archivos PHP con esta codificacion es necesario un editor que soporte esta caracteristica, yo utilize el NotePad++ (format/Encode in UTF-8 y format/UTF whitout BOM), pero tambien el Dreamweaver tiene esa opcion aunque no me tome la molestia de buscarla.

2. Debemos crear un archivo .htaccess con las siguientes lineas:AddType text/html;charset=UTF-8 html php
AddDefaultCharset utf-8Donde podran notar en negritas las extensiones de los archivos que tendremos codificados en UTF-8, de esta manera le decimos al servidor web que dichos archivos tiene que manipularlos tomando en cuenta esa codificacion.

3. Y por ultimo debemos añadir esta linea:
1.
<?php header(‘Content-Type: text/html; charset=utf-8′); ?>

a TODOS los archivos PHP principales, o lo que es lo mismo, a los que el usuario tiene acceso directo, como el caso de index.php y/o .php

Por Ultimo cabe mencionar que no es necesario que el resto de los archivos de texto adicionales (.css, .js, .htc, etc..) esten codificados sin BOM, pero si DEBEN estar codificados con UTF-8.


Mas Info:


http://www.cl.cam.ac.uk/~mgk25/unicode.html
http://www.w3.org/International/questions/qa-htaccess-charset
http://juicystudio.com/article/utf-byte-order-mark.php
http://www.microsiervos.com/archivo/weblogs/codificacion-utf8-paginas-php.html
http://www.gunlaug.no/contents/wd_1_03_03.html
  #8 (permalink)  
Antiguo 07/04/2008, 10:36
 
Fecha de Ingreso: marzo-2008
Mensajes: 119
Antigüedad: 16 años
Puntos: 0
Re: Problemas con los acentos,ñ... en las consultas PHP

NO sé si funcionará, pero de todas formas muchísimas gracias porque te lo has currado un montón para encontrar eso.

Lo probaré mañana puesto que ahora no tengo tiempo y os comentaré como ha ido.
  #9 (permalink)  
Antiguo 08/04/2008, 03:04
 
Fecha de Ingreso: marzo-2008
Mensajes: 119
Antigüedad: 16 años
Puntos: 0
Re: Problemas con los acentos,ñ... en las consultas PHP

Utilizando Dreamweaver, ya guarda los ficheros de esa forma.

¿Dónde hay que guardar ese arcivo .htaccess ?

Por lo que he probado, sigue sin funcionarme, pero no sé si lo he hecho bién.
  #10 (permalink)  
Antiguo 08/04/2008, 09:31
 
Fecha de Ingreso: noviembre-2005
Mensajes: 222
Antigüedad: 18 años, 5 meses
Puntos: 2
Re: Problemas con los acentos,ñ... en las consultas PHP

yo tengo dreamweaver ultima sesion, en propiedades de pag/codificacion se puede cambiar.
mira a ver si lo tienes en UTF8
  #11 (permalink)  
Antiguo 08/04/2008, 11:41
 
Fecha de Ingreso: marzo-2008
Mensajes: 119
Antigüedad: 16 años
Puntos: 0
Re: Problemas con los acentos,ñ... en las consultas PHP

Cita:
Iniciado por jovendigital Ver Mensaje
yo tengo dreamweaver ultima sesion, en propiedades de pag/codificacion se puede cambiar.
mira a ver si lo tienes en UTF8
Ya eso ya lo sé (ademas lo hace por defecto), lo que no sé es donde esta el fichero .htaccess en Xampp y cómo modificarlo.
  #12 (permalink)  
Antiguo 08/04/2008, 11:46
 
Fecha de Ingreso: julio-2003
Ubicación: Colombia
Mensajes: 591
Antigüedad: 20 años, 9 meses
Puntos: 7
Re: Problemas con los acentos,ñ... en las consultas PHP

Bueno revisen que utilizan el juego de caracteres que esta configurado en el servidor.

Chaop!
__________________
Visita www.legionlandrover.com
  #13 (permalink)  
Antiguo 13/08/2008, 16:32
 
Fecha de Ingreso: abril-2008
Mensajes: 1
Antigüedad: 16 años
Puntos: 0
Respuesta: Problemas con los acentos,ñ... en las consultas PHP

prueba con utf8_decode.
utf8_decode Convierte una cadena codificada UTF-8 a ISO-8859-1
asi:
utf8_decode($variable);
$mi_variable = utf8_decode($variable); // y luego la guardas en l BD
  #14 (permalink)  
Antiguo 13/08/2008, 16:36
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: Problemas con los acentos,ñ... en las consultas PHP

Cita:
Iniciado por lagosto Ver Mensaje
prueba con utf8_decode.
utf8_decode Convierte una cadena codificada UTF-8 a ISO-8859-1
asi:
utf8_decode($variable);
$mi_variable = utf8_decode($variable); // y luego la guardas en l BD
Este tema es de Abril. Porfavor no revivas viejos temas :P
  #15 (permalink)  
Antiguo 13/08/2008, 16:44
Avatar de julianmejio  
Fecha de Ingreso: agosto-2005
Ubicación: Medellín, Antioquia
Mensajes: 88
Antigüedad: 18 años, 8 meses
Puntos: 3
Respuesta: Problemas con los acentos,ñ... en las consultas PHP

Por si te sirve de algo:

http://nevthol.blogspot.com/2008/04/...speciales.html

También tenía el mismo error, y bueno, ya lo corregí. Ahora sólo uso UTF8 en ambas partes, tanto en PHP como en MySQL.

De todos modos hay algunas cosas que tienes que saber, por ejemplo, el uso de utf8_decode() y utf8_encode() a la hora de trabajar los datos, dependiendo dónde lo estés haciendo: si va a ser internamente, en PHP, debes decodificarlo para trabajar los datos "naturales", y si los vas a mostrar, puedes mostrarlos directamente de los que has recuperado desde la DB, sin embargo, si has trabajado con un dato en el que has usado utf8_decode() y lo quieres mostrar (o ingresar en la base de datos), deberías volver a codificarlo (con utf8_encode()), para que no se altere la codificación que usas.

Cita:
Este tema es de Abril. Porfavor no revivas viejos temas :P
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 23:24.