Que tal a todos. Estoy algo urgido para realizar un formulario para una página web que estoy haciendo en Chino y Ruso. Mi forma tradicional de hacer los formularios Flash/PHP mediante sendAndLoad no interpreta los caracteres de estos idiomas, cuando recibo los datos, todo lo que escribí en chino o en ruso me aparece como un signo de pregunta (?). Pero es un problema del Flash, porque el archivo enviar.php funciona correctamente, está preparado bajo UTF-8 y poniendo directamente caracteres chinos o rusos allí y enviando llegan bien, el tema es que falla cuando recibe las variables desde actionscript. Por favor espero que alquien tenga la solución a este problema.
ESTE ES EL CODIGO ACTIONSCRIPT QUE ENVIA LOS DATOS A PHP:
Código :
formulario=new LoadVars();
formulario.nombre = nombre_txt.text;
formulario.compania = compania_txt.text;
formulario.mail = email_txt.text;
formulario.telefono = telefono_txt.text;
formulario.fax = fax_txt.text;
formulario.direccion = direccion_txt.text;
formulario.cp = cp_txt.text;
formulario.ciudad = ciudad_txt.text;
formulario.pais = pais_txt.text;
formulario.servicio = tiposervicio;
formulario.origen = origen_txt.text;
formulario.destino = destino_txt.text;
formulario.valor = valor_txt.text;
formulario.mercaderia = mercaderia.selectedLabel;
formulario.descripcion = descripcion_txt.text;
formulario.cantidad = cantidad_txt.text;
formulario.peso = peso_txt.text;
formulario.alto = alto_txt.text;
formulario.ancho = ancho_txt.text;
formulario.profundidad = profundidad_txt.text;
formulario.mediomaritimo = maritimo;
formulario.medioaereo = aereo;
formulario.medioterrestre = terrestre;
formulario.comentarios = comentarios_txt.text;
formulario.nosconocen = comosupo;
formulario.sendAndLoad("enviar.php", formulario, "POST");
Y ESTE EL CÓDIGO PHP QUE RECIBE LOS DATOS DESDE ACTIONSCRIPT Y LOS ENVIA POR MAIL
Código :
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<?php
$header = "From:".utf8_decode($_POST["mail"])."\nReply-To:".utf8_decode($_POST["mail"])."\n";
$header .= "X-Mailer:PHP/".phpversion()."\n";
$header .= 'MIME-Version: 1.0' . "\r\n";
$header .= 'Content-type: text/html; charset=utf-8' . "\r\n";
$para = "[email protected]";
$asunto = "Solicitud de Cotizacin desde la Web";
$contenido = "
<font face='Verdana' size='3' color='#000000'>
<font size='4' color='#669933'><b><u>Datos Personales</u></b></font>
<br><br>
<font size='3'><b>Nombre y apellido:</b></font> ".utf8_decode($_POST['nombre'])."
<br><br>
<font size='3'><b>Compaia:</b></font> ".utf8_decode($_POST['compania'])."
<br><br>
<font size='3'><b>E-Mail:</b></font> ".utf8_decode($_POST['mail'])."
<br><br>
<font size='3'><b>Telfono:</b></font> ".utf8_decode($_POST['telefono'])."
<br><br>
<font size='3'><b>Fax:</b></font> ".utf8_decode($_POST['fax'])."
<br><br>
<font size='3'><b>Direccin:</b></font> ".utf8_decode($_POST['direccion'])."
<br><br>
<font size='3'><b>Cdigo Postal:</b></font> ".utf8_decode($_POST['cp'])."
<br><br>
<font size='3'><b>Ciudad:</b></font> ".utf8_decode($_POST['ciudad'])."
<br><br>
<font size='3'><b>Pas:</b></font> ".utf8_decode($_POST['pais'])."
<br><br>
<font size='4' color='#669933'><b><u>Tipo de Servicio</u></b></font>
<br><br>
<font size='3'><b>Tipo de Servicio:</b></font> ".utf8_decode($_POST['servicio'])."
<br><br>
<font size='3'><b>Origen Ciudad / Puerto:</b></font> ".utf8_decode($_POST['origen'])."
<br><br>
<font size='3'><b>Destino Ciudad / Puerto:</b></font> ".utf8_decode($_POST['destino'])."
<br><br>
<font size='4' color='#669933'><b><u>Descripcin de la mercadera</u></b></font>
<br><br>
<font size='3'><b>Valor:</b></font> ".utf8_decode($_POST['valor'])."
<br><br>
<font size='3'><b>Forma de envo:</b></font> ".utf8_decode($_POST['mercaderia'])."
<br><br>
<font size='3'><b>Descripcin:</b></font> ".utf8_decode($_POST['descripcion'])."
<br><br>
<font size='3'><b>Cantidad:</b></font> ".utf8_decode($_POST['cantidad'])." |
<font size='3'><b>Peso:</b></font> ".utf8_decode($_POST['peso'])." |
<font size='3'><b>Alto:</b></font> ".utf8_decode($_POST['alto'])." |
<font size='3'><b>Ancho:</b></font> ".utf8_decode($_POST['ancho'])." |
<font size='3'><b>Profundidad:</b></font> ".utf8_decode($_POST['profundidad'])."
<br><br>
<font size='4' color='#669933'><b><u>Medio de Transporte</u></b></font>
<br><br>
<font size='3'><b>Martimo:</b></font> ".utf8_decode($_POST['mediomaritimo'])."
<br><br>
<font size='3'><b>Areo:</b></font> ".utf8_decode($_POST['medioaereo'])."
<br><br>
<font size='3'><b>Terrestre:</b></font> ".utf8_decode($_POST['medioterrestre'])."
<br><br>
<font size='4' color='#669933'><b><u>Comentarios Adicionales:</u></b></font>
<br><br>
<font size='3'><b>Comentarios Adicionales:</b></font> ".utf8_decode($_POST['comentarios'])."
<br><br>
<font size='4' color='#669933'><b><u>Cmo supo de nosotros?</u></b></font>
<br><br>
<font size='3'><b>Cmo supo de nosotros?:</b></font> ".utf8_decode($_POST['nosconocen'])."</font>";
mail($para, $asunto, $contenido, $header);
echo "&estatus=ok&";
?>
Muchas gracias.
Editado por eldervaz