Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

programador php

flash + php loop

Recommended Posts

galera!!!é o seguinte preciso retirar o primeiro elemento de uma string e depois valida-lotenho a seguinte stringstring_completa = (100,101,102,103,199)preciso fazer da seguinte formaif(string == 100){ faz uma coisa;}if(string == 101){ faz uma coisa;}if(string == 102){ faz uma coisa;}if(string == 103){ faz uma coisa;}if(string == 199){ faz uma coisa;}sendo que [string] é o elemento que removi da [string_completa]desde já agradeço!!!abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo, no caso, se você declarar sua string dessa maneira que você pos, ela vai assumir somente o valor final.

 

Faz um Array que é melhor:

var Valores:Array = new Array(100,101,102,103,199)

 

for(i=0;i<=Valores.length;i++){

if(Valores == 100){

trace("O valor é: "+Valores);

}

if(Valores== 101){

trace("O valor é: "+Valores);

}

if(Valores== 102){

trace("O valor é: "+Valores);

}

if(Valores== 103){

trace("O valor é: "+Valores);

}

if(Valores== 199){

trace("O valor é: "+Valores);

}

}

Tae amigo, ele faz um loop , na linha do trace, você coloca as ações que você quer fazer quando for cada caso. Flw??

Compartilhar este post


Link para o post
Compartilhar em outros sites

cara funcionou do jeito que eu queria!!!porem com o seguinte problema!!! quero que na lista

var Valores:Array = new Array(100,101,102,103,199)

dos numerospassar uma variavel que veio do banco de dados!!!e assim num funciona!!! o que pode ser já chequei o trace Valores e aparece todos os valores mas não entra no for!!!porque isso!!!!abraçoo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo, coloque isso e poste o que o flash mostrou:

trace(Valores.length)

Compartilhar este post


Link para o post
Compartilhar em outros sites

o tamanho esta vindo 1

 

porque será?

 

segue codigo

 

abraço

 

on (release) { lv = new LoadVars();lv.onLoad = function (sucess){ if (sucess){  trace(lv.s_virgula)  //trace(lv.sexo)  trace(lv.nome_user)  trace(lv.completo)  teste = lv.s_virgula      Valores = new Array(lv.s_virgula)  trace (Valores.length)  trace (Valores)   for(i=0;i<=Valores.length;i++){if(Valores[i] == 100){trace("O valor é: "+Valores[i]);}if(Valores[i]== 101){trace("O valor é: "+Valores[i]);}if(Valores[i]== 102){trace("O valor é: "+Valores[i]);}if(Valores[i]== 103){trace("O valor é: "+Valores[i]);}if(Valores[i]== 199){trace("O valor é: "+Valores[i]);}}      }}envia_lv = new LoadVars();envia_lv.login = login.textenvia_lv.senha = senha.textenvia_lv.sendAndLoad("http://155.165.154.1/desenv_fax/sistema/login1.php",lv,"POST"); }

Compartilhar este post


Link para o post
Compartilhar em outros sites

o tamanho esta vindo 1porque será?segue codigoabraço

on (release) {lv = new LoadVars();lv.onLoad = function (sucess){if (sucess){  trace(lv.s_virgula)  //trace(lv.sexo)  trace(lv.nome_user)  trace(lv.completo)  teste = lv.s_virgula      Valores = new Array(lv.s_virgula)  trace (Valores.length)  trace (Valores)  for(i=0;i<=Valores.length;i++){if(Valores[i] == 100){trace("O valor é: "+Valores[i]);}if(Valores[i]== 101){trace("O valor é: "+Valores[i]);}if(Valores[i]== 102){trace("O valor é: "+Valores[i]);}if(Valores[i]== 103){trace("O valor é: "+Valores[i]);}if(Valores[i]== 199){trace("O valor é: "+Valores[i]);}}      }}envia_lv = new LoadVars();envia_lv.login = login.textenvia_lv.senha = senha.textenvia_lv.sendAndLoad("http://155.165.154.1/desenv_fax/sistema/login1.php",lv,"POST");}
Amigo, está vindo 1 pq na hora de puxar as variáveis, o array criado está entendendo os valores como um só string.Tem como você postar a maneira que o teu arquivo php escreve a linha de variáveis no flash? pra eu reestruturar o código pra evitar esse problema???

Compartilhar este post


Link para o post
Compartilhar em outros sites

ok!

desculpe a demora!!

 

segue o codigo php

 

abraçoo

 

	$id_user = $_SESSION["id_user"];		//consulta no banco qual o código do usuário o sexo e quais permissoes ele tem		$consulta_permissao="SELECT us.id_usuario, us.nome, p.id_permissao, us.sexo 							 FROM login.usuario AS us, login.permissao_usuario AS pu, 							 login.permissao as p							 WHERE us.id_usuario=pu.id_usuario and 								   p.id_permissao=pu.id_permissao and 								   us.id_usuario=$id_user							 ORDER BY p.id_permissao";		//execução da consulta		$resposta=pg_exec($consulta_permissao);		//espaço entre um menu e outro		while($linha = pg_fetch_array($resposta)){  			 $id_usuario=$linha["id_usuario"]; 			 $nome_user=$linha["nome"]; 			 $perm=$linha["id_permissao"];			 $sexo=$linha["sexo"];				  								echo "&id_usuario=" . $id_usuario;				echo "&nome_user=" . $nome_user;				echo "&perm=" . $perm;				echo "&sexo=" . $sexo;						$perms[] = $perm;		}				$comma_separated = implode(", ", $perms);		print "&s_virgula=".$comma_separated;

Compartilhar este post


Link para o post
Compartilhar em outros sites

ok!desculpe a demora!!segue o codigo phpabraçoo

	$id_user = $_SESSION["id_user"];		//consulta no banco qual o código do usuário o sexo e quais permissoes ele tem		$consulta_permissao="SELECT us.id_usuario, us.nome, p.id_permissao, us.sexo 							 FROM login.usuario AS us, login.permissao_usuario AS pu, 							 login.permissao as p							 WHERE us.id_usuario=pu.id_usuario and 								   p.id_permissao=pu.id_permissao and 								   us.id_usuario=$id_user							 ORDER BY p.id_permissao";		//execução da consulta		$resposta=pg_exec($consulta_permissao);		//espaço entre um menu e outro		while($linha = pg_fetch_array($resposta)){ 			 $id_usuario=$linha["id_usuario"];			 $nome_user=$linha["nome"];			 $perm=$linha["id_permissao"];			 $sexo=$linha["sexo"];				  								echo "&id_usuario=" . $id_usuario;				echo "&nome_user=" . $nome_user;				echo "&perm=" . $perm;				echo "&sexo=" . $sexo;						$perms[] = $perm;		}				$comma_separated = implode(", ", $perms);		print "&s_virgula=".$comma_separated;
Então amigo, esse codigo não precisa..rsr. não entendo de php.Preciso que você so poste a linha "print "&s_virgula=".$comma_separated;", só que já printada na tela com os valores.

Compartilhar este post


Link para o post
Compartilhar em outros sites

o resualtado da linha é!!

100,101,102,103,110,111,112,113,199,200,201,202,203,204,205,299,300,301,302,303,04,399,400,401,402,403,499,500,501,599

seria isso?

 

abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

o resualtado da linha é!!

100,101,102,103,110,111,112,113,199,200,201,202,203,204,205,299,300,301,302,303,04,399,400,401,402,403,499,500,501,599
seria isso?abraço
Amigo. o problema está aqui:troque esta linha:

Valores = new Array(lv.s_virgula)

por esta:

Valores = lv.s_virgula.split(",")

Veja se funcinoa. No caso o array está com tamanho 1 pq ele interpreta todos os valores do seu loadvars como um unico campo. o comando split quebra a string e a transforma em array, de acordo com a separação de virgula. Ok??

Compartilhar este post


Link para o post
Compartilhar em outros sites

poh cara funcionou perfeito era do jeito que eu queria valeu mesmo!!!valeuabraço

Que bom que deu certo! PRecisando estamo ae!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.