Foros del Web » Creando para Internet » Flash y Actionscript »

Valores flash y php

Estas en el tema de Valores flash y php en el foro de Flash y Actionscript en Foros del Web. Buenas, tengo un fla que consiste en una autentificacion de usuarios. La cual esta en varios idiomas, dependiendo del tipo de usuario q entre. Ahora ...
  #1 (permalink)  
Antiguo 19/12/2005, 03:10
 
Fecha de Ingreso: diciembre-2003
Ubicación: Málaga
Mensajes: 495
Antigüedad: 20 años, 4 meses
Puntos: 0
Valores flash y php

Buenas, tengo un fla que consiste en una autentificacion de usuarios. La cual esta en varios idiomas, dependiendo del tipo de usuario q entre. Ahora mismo me pasa las variables desde flash a php y me valida el usuario y tb tiene la traduccion para el primer idioma, este es el codigo fla:

Código:
stop();
var arecibir:LoadVars = new LoadVars();
var aenviar:LoadVars = new LoadVars();
var textos:LoadVars = new LoadVars();
var pasarela;
cargarTexto();
pasarela=cargarDatos();
pr1.text=pasarela;

function validar()
{
	if (usuario.text =='' || pass.text=='')
	{
	    gotoAndStop(2);
	}
	aenviar.usuario=usuario.text;
	aenviar.pass=pass.text;
	aenviar.idio=pr1.text;
	aenviar.sendAndLoad("auth_user.php",arecibir,"POST");
}

arecibir.onLoad = function() 
{
	if (arecibir.validar=='si')
	{
      gotoAndStop(3);
      pr1.text=arecibir.u1;
   	  pr2.text=arecibir.u2;
  	  pr3.text=arecibir.idioma;
    }
	else
	{
	  gotoAndStop(2);
	}
}

function cargarDatos() {
	var idioma_def:SharedObject;
	idioma_def = SharedObject.getLocal("datos");
	return idioma_def.data.idioma;
}

function cargarTexto()
{
    textos.load("auth_user.php");
}
textos.onLoad=function()
{
	txt_clave_de.text=textos.txt_member;
             txt_socio.text=textos.txt_login;
	txt_clave.text=textos.txt_pass;
	txt_ref.text=textos.txt_ref_no;
	clpboton.clptexto.texto.text=textos.btn_entrar;
}
clpboton.onRelease = validar;
Mi problema es el siguiente, para cambiar de idioma esta puesto en html y le puesto en cada href lo sigu¡ente:

echo "<br><a href='$PHP_SELF?ido=1'>Idioma 1</a><br>";

eso para cada idioma, pero no se como hacer q recoja esa variable php, haga las traducciones de ese idioma y despues cargue el fla con esas traducciones.
  #2 (permalink)  
Antiguo 19/12/2005, 09:21
Avatar de richardinj  
Fecha de Ingreso: enero-2005
Ubicación: Ciber Espacio
Mensajes: 2.180
Antigüedad: 19 años, 2 meses
Puntos: 11
Sólo con PHP??? creo que te harás un problema y confucion total... la solcuion para trabajar en varios idiomas es XML... y si el idioma traducido esta en un BD debes generar XML con PHP... es mas facil trabajar con XML y no hay tanta confucion... te lo digo por experiencia...

Esta es una web que estoy haciendo con 3 idiomas... aun me falta mucho.. pero puedes probar los cambios de idioma al pulsar las banderas... www.proteccionglobal.com/aguilatur.php

Cada idioma esta en un XML... llamados por ejemplo menu_ES.xml menu_FR.xml, etc... y uso una variable global que hace el cambio _global.idioma="ES";

y al hacer click en la bandera llama a las funciones que cargan los datos y concatena... ..... load("menu_"+_global.idioma+".xml").....

con ese metodo puedes usar todos los idiomas que deses manejando una sola variable FR, EN, ES, etc... la traduccion solo lo haces en los XML ....
Cita:
..........
<menu_inicio>HOME</memu_inicio>
<menu_contacto>CONTAC</menu_contacto>
...........

Pero..... Aca esta el codigo para cargar los datos que pides con PHP:
Cita:
System.useCodepage= true;
//cargar estilos
var styleObj = new TextField.StyleSheet();
styleObj.load("style_flash_agencias.css");
styleObj.onLoad = function(success) {
if (success) {
contenedor.styleSheet = styleObj;
}
};

////cargar archivo

function cargar()
{
dato = new LoadVars();
dato.load("carga_red.php?id="+ide.text);
contenedor.htmlText = "Cargando Contenido...";
dato.onLoad = function(succes)
{
if (succes) {contenedor.htmlText = this["nombre"];}
else {contenedor.htmlText="Error "; }
}
}

Saludos.

Última edición por richardinj; 19/12/2005 a las 09:42
  #3 (permalink)  
Antiguo 20/12/2005, 03:15
 
Fecha de Ingreso: diciembre-2003
Ubicación: Málaga
Mensajes: 495
Antigüedad: 20 años, 4 meses
Puntos: 0
Mi problema es k obtengo las traducciones de los idiomas a traves de unas funciones de php, como puedo mezclar php y xml??
  #4 (permalink)  
Antiguo 20/12/2005, 03:50
Avatar de -=ArgoN=-  
Fecha de Ingreso: octubre-2005
Ubicación: Barcelona, España
Mensajes: 843
Antigüedad: 18 años, 6 meses
Puntos: 1
Tan complicado es? yo tengo traducciones en mi web y no uso ni php ni html ni xml...
Simplemente tengo una variable global: _global.idioma... y cualquier texto que tenga qe ser traducido es un campo de texto dinamico con un if:
if(_global.idioma=="ES"){
mi_texto.text = "Bienvenido a Helbreath Europe"
}
if(_global.idioma=="EN"){
mi_texto.text = "Welcome to Helbreath Europe"
}
etc ...
Entonces en las banderas tengo:
espanol.onPress = function(){
_global.idioma = "ES";
}
etc ...

Saludos,

ArgoN
  #5 (permalink)  
Antiguo 20/12/2005, 03:52
 
Fecha de Ingreso: diciembre-2003
Ubicación: Málaga
Mensajes: 495
Antigüedad: 20 años, 4 meses
Puntos: 0
Cuando llama a php desde flash le tengo puesto el siguiente codigo:

Cita:
$user=$_POST[usuario];
$pass=$_POST[pass];
$idioma_rec=$_POST[idio];
$idioma_get=$ido;
echo $idioma_get;
//$lang_id=idioma($idioma_rec);

$lang_id=$idioma_get;
$b=$idioma_get;

if ((!empty($user)) || (!empty ($pass)))
{
$sql="select * from tabla where pass='$pass' and usuario='$user'";
if (!$res=send_sql($db,$sql))
{
echo "No se ha podido realizar la consulta";
exit(0);
}

$rows = mysql_num_rows ($res);
while($result = mysql_fetch_array ($res))
{
$b=$result[SLLANG];
}

if ($rows==1)
{

$txt_member=translate_text("MEMBERS", $lang_id, 0);
$txt_login=translate_text("LOGIN", $lang_id, 0);
$txt_ref_no=translate_text("Numero Ref. No.", $lang_id);
$txt_pass=translate_text("Password", $lang_id);
$btn_entrar=translate_text("Enter", $lang_id, 0);
echo "&validar=si&u1=$user&u2=$pass&idioma=$b&";
}
}
else
{
$txt_member=translate_text("MEMBERS", $lang_id, 0);
$txt_login=translate_text("LOGIN", $lang_id, 0);
$txt_ref_no=translate_text("Numero Ref. No.", $lang_id);
$txt_pass=translate_text("Password", $lang_id);
$btn_entrar=translate_text("Enter", $lang_id, 0);
echo "&validar=no&u1=mal&u2=mal&idioma=$b&txt_ref_no=$t xt_ref_no&txt_pass=$txt_pass&txt_member=$txt_membe r&txt_login=$txt_login&btn_entrar=$btn_entrar&";
}
?>
Y tengo la pagina Index.htm q tiene lo siguiente:

Cita:
<HTML>
<HEAD>
<TITLE>javascript_to_flash</TITLE>
</HEAD>
<?php
include "functions1.php";
echo <<<eod
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="200" height="300" id="menu_izq" align="middle">
<param name="allowScriptAccess" value="sameDomain"/>
<param name="movie" value="menu_izq.swf" />
<param name="quality" value="high" />
<param name="bgcolor" value="#000033" />
<embed src="menu_izq.swf" quality="high" bgcolor="#000033" width="200" height="300" name="menu_izq" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" swLiveConnect="true">
</embed></object>
eod;

/*echo "<br><a href='$PHP_SELF?ido=1'>Idioma 1</a><br>";
echo "<a href='$PHP_SELF?ido=3'>Idioma 2</a><br>";
echo "<a href='$PHP_SELF?ido=7'>Idioma 3</a><br>";
echo "<a href='$PHP_SELF?ido=9'>Idioma 4</a><br>";
echo "<a href='$PHP_SELF?ido=10'>Idioma 5</a><br>";
echo "<a href='$PHP_SELF?ido=13'>Idioma 6</a>";*/
?>
</body>
</html>
  #6 (permalink)  
Antiguo 20/12/2005, 03:54
 
Fecha de Ingreso: diciembre-2003
Ubicación: Málaga
Mensajes: 495
Antigüedad: 20 años, 4 meses
Puntos: 0
argon eso lo puedes hacer cuando son pocas traducciones, en mi caso son muchas traducciones y en 7 idiomas distintos.
  #7 (permalink)  
Antiguo 20/12/2005, 08:59
Avatar de richardinj  
Fecha de Ingreso: enero-2005
Ubicación: Ciber Espacio
Mensajes: 2.180
Antigüedad: 19 años, 2 meses
Puntos: 11
Cita:
Tan complicado es? yo tengo traducciones en mi web y no uso ni php ni html ni xml...
Simplemente tengo una variable global: _global.idioma... y cualquier texto que tenga qe ser traducido es un campo de texto dinamico con un if:
if(_global.idioma=="ES"){
mi_texto.text = "Bienvenido a Helbreath Europe"
}
if(_global.idioma=="EN"){
mi_texto.text = "Welcome to Helbreath Europe"
}
etc ...
Entonces en las banderas tengo:
espanol.onPress = function(){
_global.idioma = "ES";
}
etc ...

Saludos,

ArgoN
mmm.. basicamente se usaria asi.. pero si es bastante texto??? y estos en un fichero?

Karpoj quieres algo asi como la web que te mostre?
  #8 (permalink)  
Antiguo 20/12/2005, 10:50
 
Fecha de Ingreso: diciembre-2003
Ubicación: Málaga
Mensajes: 495
Antigüedad: 20 años, 4 meses
Puntos: 0
si, es para guiarme un poco.pq ya lo he intentado de varias formas, pero no lo consigo. Muchas gracias.
  #9 (permalink)  
Antiguo 21/12/2005, 05:40
 
Fecha de Ingreso: diciembre-2003
Ubicación: Málaga
Mensajes: 495
Antigüedad: 20 años, 4 meses
Puntos: 0
x cierto como se carga las variables de una url q se pasa de php a flash???

Ejemplo:

index.php?id=7

Haga lo k tenga q hacer en php y despues cargue el swf.
  #10 (permalink)  
Antiguo 22/12/2005, 12:56
Avatar de richardinj  
Fecha de Ingreso: enero-2005
Ubicación: Ciber Espacio
Mensajes: 2.180
Antigüedad: 19 años, 2 meses
Puntos: 11
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/s...rsion=6,0,29,0" width="778" height="120">

<param name="movie" value="swf/barner.swf?valor=<? echo $_GET['id'];?>">
<param name="quality" value="high"><param name="SCALE" value="exactfit">

</object>
  #11 (permalink)  
Antiguo 22/12/2005, 12:57
Avatar de richardinj  
Fecha de Ingreso: enero-2005
Ubicación: Ciber Espacio
Mensajes: 2.180
Antigüedad: 19 años, 2 meses
Puntos: 11
Flash lo recibe como una variable normal... como si siempre estubiera ahi...
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 10:02.