Ir para conteúdo

POWERED BY:

Arquivado

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

Raffael Chacon

[Resolvido] Flash + PHP

Recommended Posts

Olá pessoal sou novo aqui no fórum e também em programação PHP + Flash. Estou desenvolvendo uma página web em PHP com um gráfico em Flash que vai ser atualizado pelo usuário. Pus o gráfico na pagina PHP agora preciso que o PHP tenha uma entrada de texto em que o usuário coloque o numero aperte OK e então o gráfico ficasse indo até o ponto, exemplo:

Meu gráfico é tipo velocîmetro de carro, distribuir numeros de 1 a 10 por ele. O usuário entra na pagina PHP que carrega esse grafico.

 

Agora preciso que o usuário entre com um numero, por exemplo 8 e o gráfico fique indo até o 8 e voltando. E isso tem que ser via PHP pois vou exibir esse mesmo gráfico em outras páginas e não quero que essas possam auterá-lo.

 

 

Procurei no forum mas fiquei um pouco confuso com as explicações pois não sei se é possível isso.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá pessoal sou novo aqui no fórum e também em programação PHP + Flash. Estou desenvolvendo uma página web em PHP com um gráfico em Flash que vai ser atualizado pelo usuário. Pus o gráfico na pagina PHP agora preciso que o PHP tenha uma entrada de texto em que o usuário coloque o numero aperte OK e então o gráfico ficasse indo até o ponto, exemplo:

Meu gráfico é tipo velocîmetro de carro, distribuir numeros de 1 a 10 por ele. O usuário entra na pagina PHP que carrega esse grafico.

 

Agora preciso que o usuário entre com um numero, por exemplo 8 e o gráfico fique indo até o 8 e voltando. E isso tem que ser via PHP pois vou exibir esse mesmo gráfico em outras páginas e não quero que essas possam auterá-lo.

 

 

Procurei no forum mas fiquei um pouco confuso com as explicações pois não sei se é possível isso.

 

 

Faça isso com JAVASCRIPT... e a função externalInterface() do flash.

Pois com PHP você não vai conseguir nada rápido... você teria que re atualizar a página e limpar o cache do flash para que funcione...

Então é aconselhado o uso de javascript para esses casos.

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tenho algumas duvidas usei esse codigo que segue abaixo para adicionar a caixa de texto a o botão ao um DIV ao lado do grafico na minha página.

Id do div: conteudo

Nome da Caixa de texto: valor - id: txtvalor

Id do Button: toggle

<script type="text/javascript">
		function toggle(el) {
			if ( el.style.display != 'none' ) {
				el.style.display = 'none';
			}
			else {
				el.style.display = '';
			}
		}
		function criaBotao(){
			var conteudo = document.getElementById('conteudo');
			//Aqui começa a criação do elemento
			var button = '<button type="button" id="toggle">Enviar</button>'; 
			var txt = '<input type="text" name="valor" id="txtvalor" size="5" />';
			var valor;
			conteudo.innerHTML += txt;
			conteudo.innerHTML += button;
			//Aqui termina a criação do elemento
                        //Adiciona os Elmentos
			txt = document.getElementById('txtvalor');
			button = document.getElementById('toggle');
			var texto = conteudo.getElementsByTagName('div')[0];
			//aqui precisaria adicionar o conteudo do txt para a variável valor mas não sei como!
                        button.onclick = function()
				valor = 
                        
		window.onload = criaBotao;
	</script>

Queria saber se estou certo e como ficaria a parte do flash usando o comando que o "berseck" disse.

 

"berseck" obrigado pela resposta.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Segue como eu faço e como a adobe ensina:

Flash

import flash.external.*;

var methodName:String = "goHome";
var instance:Object = null;
var method:Function = goToAdobe;
var wasSuccessful:Boolean = ExternalInterface.addCallback(methodName, instance, method);

var txtField:TextField = this.createTextField("txtField", this.getNextHighestDepth(), 0, 0, 200, 50);
txtField.border = true;
txtField.text = wasSuccessful.toString();

function goToAdobe() {
    txtField.text = "http://www.adobe.com";
    getURL("http://www.adobe.com", "_self");
}

HTML

<form>
    <input type="button" onclick="callExternalInterface()" value="Call ExternalInterface" />
</form>
<script>
function callExternalInterface() {
    thisMovie("externalInterfaceExample").goHome();
}

function thisMovie(movieName) {
    if (navigator.appName.indexOf("Microsoft") != -1) {
        return window[movieName]
    }
    else {
        return document[movieName]
    }
}
</script>

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não sei se você que não me entendeu direito ou se eu que não entendi esses códigos que você postou. Eu já fiz a parte do javascript dentro da minha pagina em php. Tenho um documento chamado cpd.php e o grafico cpd.swf na mesma pasta. Publiquei o cpd.swf na minha pagina php e ao lado dele tem uma caixa de texto e um botão, quero que quando click e ponha algo na caixa de texto ele altere o grafico. Fiz um javascript atribuindo o valor digitado a uma variável chamada "valor". Agora quero saber como pego o valor da variável "valor" pelo Flash para usar nas funções lá. Vou usar uma tipo "gotoand...." mas preciso do numero digitado na caixa de texto que está na variável "valor" dentro do Javascript.

 

Segue o javaScript, ja testei a variável e ele está recebendo o valor digitado:

<script type="text/javascript">
var valor;
var button;
var txt;
	function criaBotao(){

			button = '<button name="but" type="button" id="btn">Enviar</button>'; 
			txt = '<input type="text" name="txtvl" id="txtvalor" size="5" />';
			conteudo.innerHTML += txt;
			conteudo.innerHTML += button;
			but.onclick = function(){
			valor = document.getElementById('txtvalor').value;
			}
		}
		
		window.onload = criaBotao;
	</script>

Obrigado novamente pela atenção e pelas resposta "berseck".

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom então vamos lá explicar sem nada disso :)

 

Você tem um input Text como você já definiu ai

 

Coloque assim:

JavaScript:

function resetTexto(){
    var str = document.getElementById('text').value;
    if(window.teste) {
        window.document["teste"].SetVariable("myText", str);
    }
    if(document.teste) {
        document.teste.SetVariable("myText", str);
    }
}

 

html ou se quiser fazer em java mesmo como você ta fazendo:

<form>
<input type="text" id="text" value="">
<input type="button" value="envia" onClick="resetTexto();">
</form>

ActionScript:

var myText:String = '';
var recebe:String = '';

onEnterFrame = function(){
    if(myText != ''){
        if(recebe != myText){
            texto.text += myText + newline; 
            myText = recebe;
        }
    }
}

Onde texto é a instancia do campo de texto... no caso eu coloquei + newline e dentro de um onEnterFrame.

 

Espero que seja isso que você procura ;)

Qualquer coisa o arquivo base ta aqui para você fazer download:

setVariable.rar

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Funcionou tudo!!!!!! Ja está importando as informações para o flash! Muito obrigado "berseck". Agora só falta a parte o Flash.

Ficou assim então:

Flash

var myText:String = '';
var recebe:String = '';
	onEnterFrame = function(){    
		if(myText != ''){        
			if(recebe != myText){            
				texto.text = myText;
				myText = recebe;        
			}    
		}
	}

 

 

JavaScript

<script type="text/javascript">
var button;
var txt;
		function criaBotao(){
			button = '<input type="button" value="envia" onclick="resetTexto();">';
			txt = '<input type="text" name="text" id="text" size="5" onclick="resetTexto();" />';
			form1.innerHTML += txt;
			form1.innerHTML += button;
		}
		function resetTexto(){    
			var str = document.getElementById('text').value;    
				if(window.cpd) {        
					window.document["cpd"].SetVariable("myText", str);    
				}    
				if(document.cpd) {        
					document.cpd.SetVariable("myText", str);    
				}
		}
	window.onload = criaBotao;
	</script>

 

 

 

RESOLVIDO!

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.