Ir para conteúdo

POWERED BY:

Arquivado

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

_dago_

[Resolvido] Formulario

Recommended Posts

estou trabalhando em um formulario

que nele tenho que colocar varias opções

como uma bem simples é essa assim

 

nome:

cidade:

e-mail:

Mensagem:

 

Otimo é isso ai, e so tem mais uma coisa

que precisso colocar uma seta na frente de cidade contendo vario estados quando a pessoa clicar varios estados,

ai quando a pessoa escolher o que ela deseja fica no campo o qual ela escolheu e assim quando enviar para o e-mail

ficar gravado so o campo que ela escolheu

então como eu faço isso

 

normalmente eu

faço o que

coloco nome na variavel

o cara vai la e coloca os dados

depois quando clica ele chama o PHP

o o PHP enviar para o e-mail

 

no flash utilizo essa formula aqui

 

stop();
nome.text = "";
email.text = "";
mensagem.text = "";
telefone.text = "";

var obj_s:LoadVars = new LoadVars();
var obj_l:LoadVars = new LoadVars();

bt_enviar.onPress = function(){
	if (nome.text == "") {
		status.text = "O nome está vazio";
		selection.setFocus("nome");
	} else if (email.text == "") {
		status.text = "O e-mail está vazio";
		Selection.setFocus("email");
	} else if (telefone.text == "") {
		status.text = "O telefone está vazio";
		Selection.setFocus("tele");
	} else if (mensagem.text == "") {
		status.text = "A mensagem está vazio";
		Selection.setFocus("mensagem");
	} else {
		obj_s.nome = nome.text; 		//Valor do nome
		obj_s.email = email.text;
		obj_s.telefone = telefone.text;
		obj_s.mensagem = mensagem.text;
		obj_s.sendAndLoad("mail.php",obj_l,"POST");
		obj_l.onload = carrega;
		gotoAndStop(76);
		status.text = "Enviando com sucesso";
	}
};
bt_limpar.onPress = function(){
	nome.text = "";
	email.text = "";
	mensagem.text = "";
	telefone.text = "";
}

------------------------

grato!

Compartilhar este post


Link para o post
Compartilhar em outros sites

O nome do que você que é combobox

é um item que se encontra em components do proprio flash.

 

Ai basta você setar quais itens você quer etc...

E na hora de enviar o form você envia o campo.value ai pegando a informação que você quer

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Certo

descobri como

se faz um combobox

 

so que agora como eu coloco a variavel que o usuario escolheu mandar para o php

dentro da formula que eu mandei ai em cima

onde eu coloco ela ?

dentro desse codigo

stop();
nome.text = "";
email.text = "";
mensagem.text = "";
telefone.text = "";

var obj_s:LoadVars = new LoadVars();
var obj_l:LoadVars = new LoadVars();

bt_enviar.onPress = function(){
	if (nome.text == "") {
		status.text = "O nome está vazio";
		selection.setFocus("nome");
	} else if (email.text == "") {
		status.text = "O e-mail está vazio";
		Selection.setFocus("email");
	} else if (telefone.text == "") {
		status.text = "O telefone está vazio";
		Selection.setFocus("tele");
	} else if (mensagem.text == "") {
		status.text = "A mensagem está vazio";
		Selection.setFocus("mensagem");
	} else {
		obj_s.nome = nome.text; 		//Valor do nome
		obj_s.email = email.text;
		obj_s.telefone = telefone.text;
		obj_s.mensagem = mensagem.text;
		obj_s.sendAndLoad("mail.php",obj_l,"POST");
		obj_l.onload = carrega;
		gotoAndStop(76);
		status.text = "Enviando com sucesso";
	}
};
bt_limpar.onPress = function(){
	nome.text = "";
	email.text = "";
	mensagem.text = "";
	telefone.text = "";
}

 

valeu em

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom

Primeiro poderia por favor utilizar na ferramenta de respota do forum, o código CODE que tem ali em cima são duas setinhas <> para você colocar seu código dentro fica melhor para visualização de seu código

 

 

Tirando isso vamos a uma explição basica, pois acho que você ta usando o código sem ao menos sabe para que servem as coisas!

 

1) LoadVars

var obj_s:LoadVars = new LoadVars();
var obj_l:LoadVars = new LoadVars();
Para que serve isso?

Bom primeiramente obj_s significa ai nesse código objeto que envia (Object_sender) e obj_l é o que carrega (Object_loader)

Os nomes não precisam ser exatamente assim, você poderia ter dado o nome que você bem entende-se para essas variaveis, desde que elas fossem determinadas como LoadVars

 

Como você determinou isso?

Usando os dois pontos ( : ) após ter dado o nome a variavel.

Sempre que você declarar var variavel: o flash vai lhe dar milhares de opções de variavel a ser determinada. Isso serve para que depois você consiga acessar mais fácilmente as propriedades da mesma. Não necessáriamente você precisa fazer isso.

 

Bom e o que loadVars faz afinal?

É um objeto no qual você vai determinar variaveis internas que vão conter valores, que você vai passar para outras aplicações através do send ou sendAndLoad

 

Então quando você faz aqui:

obj_s.nome = nome.text; //Valor do nome
obj_s.email = email.text;
obj_s.telefone = telefone.text;
obj_s.mensagem = mensagem.text;
obj_s.sendAndLoad("mail.php",obj_l,"POST");
Você criou 4 novas variaveis dentro do objeto (obj_s), nome, email, telefone e mensagem.

Após ter criado e dado valores a eles você enviou ao php, e colocou a variavel de retorno (LOAD) como o obj_l e usou o metodo POST para fazer o envio para o PHP, poderia ter escolhido o GET por exemplo.

 

Então se você quer adicionar um novo valor que vai ser enviado ao php basta você colocar:

obj_s.cidade = comboBox.value

 

No exemplo que você quer, logo abaixo do telefone, ou da mensagem... e antes do sendAndLoad

 

Ficando assim:

obj_s.nome = nome.text;
obj_s.email = email.text;
obj_s.telefone = telefone.text;
obj_s.cidade = comboBox.value;
obj_s.mensagem = mensagem.text;
obj_s.sendAndLoad("mail.php",obj_l,"POST");
E pronto agora você enviou a variavel cidade ao php

 

Para receber no php tem que usar:

<?php
$cidade = $_POST['cidade'];
?>

E agora você tem a variavel tbm válida no PHP como $cidade

 

Espero que depois dessa explicação sua vida com formulários fique bem mais fácil

 

Abraços e bons estudos!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Caramba Olha você não so quebrou um galho pra mim mas sim uma "Árvore" poxa em

uma explicação dessa nem tenho como agradecer

valeu mesmo em

 

abração pra te!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

certo

quando eu fiz o teste não deu certo

 

o meu PHP

esta assim

<?php
@extract($_POST);
$recipient = "pamplona_3@hotmail.com";
$subject = "Contato Delano Imoveis";
$msg = "Nome: $nome\nemail: $email\nCidade: $_POST['cidade']\nTelefone: $telefone\nMensagem: $mensagem";
$mailheaders = "From: $Email";

	mail("$recipient", "$subject", "$msg", "$mailheaders");
header("location: pagina.htm");
	
?>

e você viu ai eu coloquei o Cidade

so que eu tenho que colocar cidade dentro de "$msg" para aparece no e-mail tudo certnho ordem

agora você colocou pra mim

assim solto

<?php$cidade = $_POST['cidade'];?>

 

ai eu imaginei que fosse-se daquela forma que eu coloquei em cima ai

mas num deu certo quando manda para o e-mail ele não aparece nada do comboBox

 

la no flash eu dei conta ficou tudo certo

 

mas eai que você me diz?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olha acabei de fazer um outro teste aqui

deu isso aqui

no e-mail

 

 

Nome: dago

email: pamplbn@hotmail.com

Cidade: undefined

Telefone: 62165490

Mensagem: teste formulario teste 00010

 

então quer dizer q esta havendo algum problema

so que agora eu coloquei o codigo do PHP

assim

 

<?php
@extract($_POST);
$recipient = "pamplona_3@hotmail.com";
$subject = "Formulario Delano Imoveis";
$msg = "Nome: $nome\nemail: $email\nCidade: $cidade = $_POST['cidade'];\nTelefone: $telefone\nMensagem: $mensagem";
$mailheaders = "From: $Email";

	mail("$recipient", "$subject", "$msg", "$mailheaders");
header("location: pagina.htm");
	
?>

essa msg que apareceu

"Cidade: undefined"

 

o que deve ser ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ok o undefined é proveniente de um valor desconhecido vindo do flash...

 

Ou seja combobox.value não foi definino.

Como aqui citado:

obj_s.cidade = comboBox.value;

Como pode ver isso foi apenas um exemplo de como se pega o valor do comboBox

O que isso quer dizer? ele vai pegar o valor da ARRAY de seu combobox

Em que posição se encontra o valor 1,2,3,4,5,6 e assim por diante

 

Então vamos a um exemplo simples para você entender como funciona =)

Pegue um combo box na parte de componentes e jogue em seu palco

Agora instancie e my_cb

Feito isso

Clique sobre o frame e cole o seguinte código:

my_cb.addItem({data:1, label:"Ecolha sua Cidade"});
my_cb.addItem({data:2, label:"São Paulo"});
my_cb.addItem({data:3, label:"Rio de Janeiro"});
my_cb.addItem({data:4, label:"Salvador"});
my_cb.addItem({data:5, label:"Minas Gerais"});

var listenerObject:Object = new Object();
listenerObject.change = function(eventObject:Object) {
	trace('Nome da Cidade escolhida: '+my_cb.text);
	trace('Posição da cidade no combobox: '+my_cb.value);
};
my_cb.addEventListener("change", listenerObject);

Ok, o que vai retornar ai?

No primeiro trace no output de seu flash, aparecerá a frase Nome da Cidade escolhida: Nome da cidade que você escolheu no combobox

E no segundo trace vai dar a posição do item dentro do combobox

 

Assim sendo quando você escolher uma cidade em seu form você tem que passar instancia de seu combobox . text, para ele pegar qual foi o texto selecionado.

 

E pronto agora vai funcionar.

 

Abraços e bons estudos

Compartilhar este post


Link para o post
Compartilhar em outros sites

olha me desculpa mas estou aqui novamente

é o seguinte

endendi tudo que você explicou certo

so que o problema esta aqui

onde eu coloco esse codigo que você me mostou

my_cb.addItem({data:1, label:"Ecolha sua Cidade"});
		my_cb.addItem({data:1, label:"Goiania"});
		my_cb.addItem({data:2, label:"Brasilia"});

		var listenerObject:Object = new Object();
		listenerObject.change = function(eventObject:Object) {
       			trace('Nome da Cidade escolhida: '+my_cb.text);
        		trace('Posição da cidade no combobox: '+my_cb.value);
		};
		my_cb.addEventListener("change", listenerObject);

dentro

desse aqui

stop();
nome.text = "";
email.text = "";
mensagem.text = "";
telefone.text = "";

var obj_s:LoadVars = new LoadVars();
var obj_l:LoadVars = new LoadVars();

bt_enviar.onPress = function(){
	if (nome.text == "") {
		status.text  = "O nome está vazio";
		selection.setFocus("nome");
	} else if (email.text  == "") {
		status.text  = "O e-mail está vazio";
		Selection.setFocus("email");
	} else if (telefone.text == "") {
		status.text  = "O telefone está vazio";
		Selection.setFocus("tele");
	} else if (mensagem.text  == "") {
		status.text  = "A mensagem está vazio";
		Selection.setFocus("mensagem");
	} else {
		obj_s.nome = nome.text; 		//Valor do nome
		obj_s.email = email.text;
		obj_s.telefone = telefone.text;
		obj_s.cidade = comboBox.value;
		obj_s.mensagem = mensagem.text;
		obj_s.sendAndLoad("mailformulario.php",obj_l,"POST");
		obj_l.onLoad = carrega;
		gotoAndStop(76);
		status.text = "Enviando com sucesso";
	}
};
bt_limpar.onPress = function(){
	nome.text = "";
	email.text = "";
	mensagem.text = "";
	telefone.text = "";
}
´

 

eu tentei colocar ele de varias maneiras o que acontece

que ele não manda para o PHP em .text

no PHP

quando eu tava fazendo alguns teste

descobri que aquele codigo quando eu coloco ele

assim

<?php
@extract($_POST);
$recipient = "pamplona_3@hotmail.com";
$subject = "Formulario Delano Imoveis";
$msg = "Nome: $nome\nemail: $email\nCidade: $comboBox\nTelefone: $telefone\nMensagem: $mensagem";
$mailheaders = "From: $Email";

	mail("$recipient", "$subject", "$msg", "$mailheaders");
header("location: pagina.htm");
	
?>

da certo, pq quando eu coloco da forma que eu tinha pensado que dava certo o e-mail não chegava no destino certo

então agora a minha duvida é com o flash pq o flash não esta mandando em text para o PHP que na linha ($msg) ele parece que so le .text então eu tenho que colocar aquele codigo que você me passou separado desse meu? num outro freime?

nossa hoje eu coloquei ele em varios lugares e nada dele transformar em .text, eu troquei de nome do arquivo (my_cb)

olha onde estou fazendo o teste.

http://www.inflamavel.net/dago123/

entra dentro de procurar imoveis

la dentro tem um exemplo la so que essa pagina ai esta em teste so pra mim aprender a fazer isso ai.

 

 

valeu mais uma vez!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fica assim:

 


stop();
nome.text = "";
email.text = "";
mensagem.text = "";
telefone.text = "";
var cidade:String = ''; // ESSA VARIÁVEL PEGARÁ A CIDADE DO COMBOBOX


// objetos responsáveis pelo envio do email

var obj_s:LoadVars = new LoadVars();
var obj_l:LoadVars = new LoadVars();


// listenner do combo

var listenerObject:Object = new Object();



// aqui você adiciona as cidades - é crtl+c / crtl+v alterando obviamente os valores número (data) e nome da cidade (label)

my_cb.addItem({data:1, label:"Ecolha sua Cidade"});
my_cb.addItem({data:1, label:"Goiania"});
my_cb.addItem({data:2, label:"Brasilia"});

listenerObject.change = function(eventObject:Object) {
	cidade = my_cb.text;
	trace('saídas de teste');
	trace('Cidade selecionada: '+cidade);
};

my_cb.addEventListener("change", listenerObject);


bt_enviar.onPress = function(){
        if (nome.text == "") {
                status.text  = "O nome está vazio";
                selection.setFocus("nome");
        } else if (email.text  == "") {
                status.text  = "O e-mail está vazio";
                Selection.setFocus("email");
        } else if (telefone.text == "") {
                status.text  = "O telefone está vazio";
                Selection.setFocus("tele");
        } else if (mensagem.text  == "") {
                status.text  = "A mensagem está vazio";
                Selection.setFocus("mensagem");
        } else if(cidade == '' or cidade == 'Ecolha sua Cidade'){ // VERIFICAÇÃO DO COMBO AQUI
		status.text = 'selecione uma cidade';
	} else {
                obj_s.nome = nome.text;                 //Valor do nome
                obj_s.email = email.text;
                obj_s.telefone = telefone.text;
                obj_s.cidade = cidade; // A VARIÁVEL QUE MANDARÁ PRO PHP O COMBO RECEBE O VALOR AQUI
                obj_s.mensagem = mensagem.text;
                obj_s.sendAndLoad("mailformulario.php",obj_l,"POST");
                obj_l.onload = carrega;
                gotoAndStop(76);
                status.text = "Enviando com sucesso";
        }
};
bt_limpar.onPress = function(){
        nome.text = "";
        email.text = "";
        mensagem.text = "";
        telefone.text = "";
}

NO PHP

$cidade = $_POST['cidade'];

// E MONTA O CORPO DO EMAIL 

Compartilhar este post


Link para o post
Compartilhar em outros sites

RESOLVIDO

 

Foi complicado mais foi um otimo aprendizado

obrigado a todos

 

so uma observação

no nosso amigo ai falou como deveria colocar no swf certo

e no PHP

 

so que no meu PHP

eu coloquei assim

<?php
@extract($_POST);
$recipient = "asdasd@hotmail.com";
$subject = "Formulario Delano Imoveis";
$msg = "Nome: $nome\nemail: $email\nCidade: $cidade\nTelefone: $telefone\nMensagem: $mensagem";
$mailheaders = "From: $Email";

	mail("$recipient", "$subject", "$msg", "$mailheaders");
header("location: pagina.htm");
	
?>

quero dizer que eu não utilizei

<?php$cidade = $_POST['cidade'];?>

mas agradeço a todos

obrigado abração!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Que bom que conseguiu...

 

Não é necessário sempre declarar a variavel para que ela funcione.

Mas as vezes se você não declarar dependendo do servidor o e-mail simplemente não funciona.

 

Por isso se puder torne padrão em todas as linguagens que você estiver aprendendo e desenvolvendo declarar as variáveis antes de usar as mesmas.

 

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.