Foros del Web » Creando para Internet » HTML »

Problema con navegadores

Estas en el tema de Problema con navegadores en el foro de HTML en Foros del Web. Tengo un problema, estoy haciendo una consulta de busqueda. Tengo un campo input para introduzco la palabra a buscar, pero el problema esta en que ...
  #1 (permalink)  
Antiguo 20/03/2012, 07:04
 
Fecha de Ingreso: septiembre-2007
Mensajes: 268
Antigüedad: 17 años, 2 meses
Puntos: 8
Problema con navegadores

Tengo un problema, estoy haciendo una consulta de busqueda.

Tengo un campo input para introduzco la palabra a buscar, pero el problema esta en que si es Internet Explorer funciona, pero si es Firefox no.

Un ejemplo: yo intruduzco la palabra españa, en firefox al servidor llega españa pero en firefox llega españa y entonces la consulta falla(quiere decir que no devuelve resultados.).

Tengo puesto este encoding que se supone que es para que utilice el encoding latino y no el sajon, pero no funciona.
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">

¿Alguna solucion?

Muchas gracias, por las molestias.
  #2 (permalink)  
Antiguo 20/03/2012, 08:50
 
Fecha de Ingreso: septiembre-2007
Mensajes: 268
Antigüedad: 17 años, 2 meses
Puntos: 8
Respuesta: Problema con navegadores

Ya se donde esta el fallo pero no se como solucionarlo el problema esta que estoy haciendo la llamada al servidor a traves de un pop-up y entonces el charset que he puesto no se esta usando, pero no se como escapar los caracteres para que me lleguen al otro lado bien.

Porque si los caracteres especiales, es decir, acentos o la ñ, por otro caracter en el servidor tendria que hacer el camino inverso y para eso ya trato lo que me llega y lo cambio por lo que deberia recibir.

Un saludo y gracias por las molestias.
  #3 (permalink)  
Antiguo 20/03/2012, 10:10
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 17 años, 4 meses
Puntos: 1567
Respuesta: Problema con navegadores

Lo primero a considerar es que si te funciona en uno, debería funcionarte en otro, o si no, no funcionarte en ninguno.
Previo a la realización de cualquier prueba, vacía siempre la cache de los navegadores.

Si siguen los errores
Primero determinar que codificación de caracteres usa la base de datos, una vez hecho esto, hacer que el php envie los datos a la BD, en la misma codificación.

El resultado en pantalla, si hay coincidencias, podrá ser
España
ó
españa

Suponiendo que estás trabajando con utf-8, asegurate que
el html ó php que tiene el form, tenga un header
<?php header("Content-type: text/html; charset=ut8"); ?>
ó un meta
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
y que tu editor de texto, lo guarde como UTF-8 sin BOM (leer http://foros.emprear.com/codificar ). No uses el block de notas de windows.
Lo mismo para el php que procesa la búsqueda.
En cuanto a la conexión a la base de datos, usa una de estas variantes (ya que depende de la versión de php que uses
Si tu versión de php es < 5.2.3 podés usar en la conexión

$conectar_BD = mysql_connect($sql_hostname,$sql_login,$sql_passwo rd);
$seleccion_BD = mysql_select_db($sql_base,$conectar_BD);
mysql_query("SET character_set_results = 'utf8'", $conectar_BD);

Si tu versión de php es >= 5.2.3 podés usar en la conexión

$conectar_BD = mysql_connect($sql_hostname,$sql_login,$sql_passwo rd);
$seleccion_BD = mysql_select_db($sql_base,$conectar_BD);
mysql_set_charset("utf8",$conectar_BD);

Lee este post como referencia
http://www.forosdelweb.com/f4/charse...9/#post4146437

Todo esto es aplicable a los contenidos de tus registros, evitá siempre que los nombres de tus columnas en la BD contengan caracteres como ñ, á, etc, porque ahi se complica mas la cosa

SAludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #4 (permalink)  
Antiguo 20/03/2012, 10:27
 
Fecha de Ingreso: septiembre-2007
Mensajes: 268
Antigüedad: 17 años, 2 meses
Puntos: 8
Respuesta: Problema con navegadores

Al final lo que he hecho es usar la funcion escape de javascript en la llamada al pop-up.

es decir, recuperaba el parametro de la funcion javascript. y a ese le aplicaba la funcion escape(), y asi me funciona en los dos navegadores.

Etiquetas: navegadores
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 06:05.