Ir para conteúdo

POWERED BY:

Arquivado

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

Felipe_Volpatto

[Resolvido] Carrega o que estiver na URL

Recommended Posts

Bom dia a todos, tudo bem?

 

Estou com um problema em meu script. Não tenho muito conhecimento em AS, mas estou tentando me virar.

Observem esse código:

 

var categorias:LoadVars = new LoadVars();
var subcategorias:LoadVars = new LoadVars();
var sementes:LoadVars = new LoadVars();
var sendVars:LoadVars = new LoadVars();
/* CATEGORIA */
categorias.load(arquivoCategorias);
categorias.onLoad = function() {
	var cont:Number = categorias.qtd;
	for (var g:Number = 0; g<cont; g++) {
		jumpcategorias.addItem(eval("categorias.categoria"+g), eval("categorias.id"+g));
	}
	if (cont == 1) {
		sendSubCat(jumpcategorias.value);
	}
};
var listenerCat:Object = new Object();
listenerCat.change = function() {
	sendSubCat(jumpcategorias.value);
};
var listenerSubCat:Object = new Object();
listenerSubCat.change = function() {
	if(jumpcategorias.value == 57){
		getURL('caracteristicas.php?id='+jumpsubcategorias.value);
	}
	else{
		getURL('produtosInterna.php?id='+jumpsubcategorias.value);
	}
};
var listenerSem:Object = new Object();
listenerSem.change = function() {
	getURL('produtosInterna.php?id='+jumpsementes.value);
};
/* SUBCATEGORIAS */
function sendSubCat(valor) {
	sendVars.id = valor;
	if (sendVars.sendAndLoad(arquivoSubCategorias, subcategorias, "POST")) {
		subcategorias.onLoad = function() {
			var contSub:Number = subcategorias.qtd;
			jumpsubcategorias.removeAll();
			if (contSub != 1) {
				for (var u:Number = 0; u<contSub; u++) {
					jumpsubcategorias.addItem(eval("subcategorias.subcategoria"+u), eval("subcategorias.id"+u));
				}
			} else {
				sendVars.id = valor;
				if (sendVars.sendAndLoad(arquivoSementes, sementes, "POST")) {
					sementes.onLoad = function() {
						var contSem:Number = sementes.qtd;
						jumpsubcategorias.removeAll();
						for (var s:Number = 0; s<contSem; s++) {
							jumpsubcategorias.addItem(eval("sementes.produto"+s), eval("sementes.id"+s));
						}
					};
				} else {
					trace("erro1");
				}
			}
		};
	} else {
		trace("erro2");
	}
}

jumpsubcategorias.addEventListener("change", listenerSubCat);
jumpcategorias.addEventListener("change", listenerCat);
//jumpsementes.addEventListener("change", listenerSem)
busca_txt.border = true;
busca_txt.borderColor = 0xBBBBBB;
// BUSCA
var busca:LoadVars = new LoadVars();
bt_busca.onRelease = function() {
	getURL('busca.php?palavra='+busca_txt.text);
};

Bom, aqui, é um flash que carrega do banco de dados a categoria do produto e embaixo sua subcategoria. Ao selecionar uma categoria, ele mostra todas as subcategorias do mesmo. Ao clicar na subcategoria, ele vai para a página onde se encontram todos os produtos dessa subcategoria. Até aqui, tudo bem.

O problema, é que não fica salvo a busca que fiz. Gostaria que ficasse salvo a categoria e subcategoria que escolhi para chegar até aqui. Como posso fazer isso? Creio que preciso ler a URL e fazer uma comparação, mas não estou conseguindo ir mais adiante.

 

Não sei se fui bem claro.

Aqui esta o link do swf em questão: SWF

 

Espero que possam me ajudar.

Um abraço a todos!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Da uma lida sobre SWFAddress

 

E flashVars como passar o parametro via GET para o flash... assim você vai passar os dados que você quer por flashvars e então vai poder comparar.

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nops...

 

Porque o flash não lê a url para que você possa tratar de dados vindos da mesma...

Você pode até usar o elemento url para tentar pegar a url e fazer algo com ela.

 

Mas sempre que tentei algo assim não deu lá muito certo.

Se quiser tentar fica ai a dica.

 

Mas o melhor metodo é através de GET e flash vars mesmo, é simples fácil e rapido

Basta você adicionar 1 campo no embed 1 campo nos params e um _root.frames e ta pronto... você já vai saber que frame carregar assim que o flash iniciar.

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá!

 

Muito bom esse flashvars, achava impossível passar algum parâmetro para o flash.

Eu criei alguns swf's de teste, que apenas me mostrassem numa caixa de texto dinâmica o que vinha por GET e funcionou tranquilamente.

 

Porém, agora estou na dúvida aqui. Tendo o código acima, consegui fazer o flash ler o parâmetro passado (um ID) mas não estou conseguindo fazer uma verificação para ver qual está seleciona e mostrar o mesmo.

Alguma idéia?

 

Abraço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você pode fazer uma regra simples assim:

 

if(_root.frame){
 gotoAndStop(_root.frame);
}

Se ele for um número...

Agora se ele for um nome

 

você pode usar switch pelo nome

fazendo:

switch(_root.frame){
case "bola":
 gotoAndStop(x);
 break;
case "quadrado":
 gotoAndStop(y);
 break
default:
 gotoAndStop(1);
 break;
}

Abraços

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.