Foros del Web » Programando para Internet » PHP »

Problemas con PHP y el idioma RUSO

Estas en el tema de Problemas con PHP y el idioma RUSO en el foro de PHP en Foros del Web. Hola Tengo un problemilla con el muestreo de los valores de los campos de mis tablas de mysql que contienen caracteres rusos: Es para hacer ...
  #1 (permalink)  
Antiguo 25/01/2010, 14:09
 
Fecha de Ingreso: enero-2010
Mensajes: 1
Antigüedad: 14 años, 3 meses
Puntos: 0
Exclamación Problemas con PHP y el idioma RUSO

Hola
Tengo un problemilla con el muestreo de los valores de los campos de mis tablas de mysql que contienen caracteres rusos:
Es para hacer una web con 3 idiomas, uno de ellos el ruso.
La tabla en cuestion tiene la collation utf8, y he insertado los valores desde el phpmyadmin. Después al examinar la tabla muestra correctamente los carácteres.
Pero al hacer la consulta desde php y mostrar las variables, me sale todo con interrogantes.He cambiado la codificación de la página con el "meta" poniendo el "charset" tanto a ISO como a UTF. Si lo pongo en utf no me muestra bien el castellano.
Ah, en cambio, si tengo alguna variable creada en la misma web con ruso, si que la muestra bien, ej:
$valor =
echo $valor;
>>

Solo me da problemas al sacar los datos de la base de datos.
Un ejemplo:

function prueba(){
$db = new codeDB(); //llama a una clase para realizar la conexión
$db->conectar();
$sqli="SELECT * FROM t_detalleidioma WHERE idDetalle=3";
$detalleidioma = $db->ejecutarSQL($sqli); //ejecuta la sentencia
while ($row=mysql_fetch_array($detalleidioma))
{

$detalle = $row["detalle"];
echo "<br>Detalle = ".$row['detalle']." y ".$detalle."<br>";
echo "Decode en RUS: ";
echo utf8_decode("Максимальная цена");
echo "<br>Enconde en RUS: ";
echo utf8_encode("Максимальная цена");
echo "<br>decodeBBDD:";
echo utf8_decode($row["detalle"]);
echo "<br>encodeBBDD:";
echo utf8_encode($row["detalle"]);
}
$db->liberarRecursos($detalleidioma);
$db->desconectar();
}

Lo que aparece por pantalla es:

Detalle = ???????? y ????????
Decode en RUS: ???????????? ????
Enconde en RUS: МакÑÐ¸Ð¼Ð°Ð»ÑŒÐ½Ð°Ñ Ñ†ÐµÐ½Ð°
decodeBBDD:????????
encodeBBDD:????????

Gracias de antemano y un saludo!!
  #2 (permalink)  
Antiguo 12/06/2010, 17:17
 
Fecha de Ingreso: marzo-2010
Mensajes: 19
Antigüedad: 14 años
Puntos: 0
Respuesta: Problemas con PHP y el idioma RUSO

Hola

Resolvi el problema colocando esto antes del ejecutar el sql.

mysql_query("SET NAMES utf8");

Etiquetas: idiomas
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 09:19.