Ir para conteúdo

POWERED BY:

Arquivado

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

jocamo

FormFacil

Recommended Posts

Estou tentando fazer um formulário de email que baixei deste forum(se não me engano indicado oelo Membro Berzek) e quando testo dá erro.

 

 

Peço que alguem analise e veja onde está o erro, pois não encontro o que está errado.

Já adianto que o provedor aceita PHP( www.zymic.com).

Fiz o form assim:

 

Criei os campos....

 

Nome> instanciado>nome

E-mail> instanciado> email

Assunto> instanciado>assunto

Mensagem>instanciado> mensagem

 

Estes campos estão apenas instanciados, não há nada no campo variable(var)

 

E 2 botões instanciados > bt_enviar

bt_limpar

__________________________

No frame coloquei a AS:

____________________________

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

status.text = "";

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

bt_enviar.onPress = function(){
   if (nome.text == "") {
      status.text  = "O campo nome esta vazio";
      selection.setFocus("nome");
   } else if (email.text  == "") {
      status.text  = "O campo e-mail está vazio";
      Selection.setFocus("email");
   } else if (assunto.text == "") {
      status.text  = "O campo assunto esta vazio";
      selection.setFocus("assunto");
   } else if (mensagem.text  == "") {
      status.text  = "Faltou a mensagem";
      Selection.setFocus("mensagem");
   } else {
      obj_s.nome = nome.text;       //Valor do nome
      obj_s.email = email.text;
      obj_s.assunto = assunto.text;
      obj_s.mensagem = mensagem.text;
      obj_s.sendAndLoad("mail.php",obj_l,"POST");
      obj_l.onload = carrega;
      status.text = "enviando";
   }
}
function carrega(ok){
   status.text = obj_l.ok;
   if(ok){
      if(obj_l.ok == '1'){
         nextFrame();
      }else {
         status.text = "Erro ao enviar";
      }
   }else {
      status.text = "E-mail não enviado";
   }
};
bt_limpar.onPress = function(){
   nome.text = "";
   email.text = "";
   assunto.text = "";
   mensagem.text = "";
   status.text = "";   
}

_________________________________________

No arquivo PHP coloquei:

______________________________________________

 

<?php
$nome = $_POST['nome'];
$email = $_POST['email'];
$assunto = $_POST['assunto'];
$mensagem = $_POST['mensagem'];

// Aqui coloquei meu email
$recipient = "meunome@uol.com.br";

$subject = "formulário de contato";

$msg = "Nome: $nome \n\nEmail: $email \n\nAssunto: $assunto\n\nMensagem: $mensagem";

// Aqui coloquei meu email
$mailheaders = "From: $meunome@uol.com.br";

$ok = mail("$recipient", "$subject", "$msg", "$mailheaders");
if($ok){
   echo '&ok=1&';
}else {
   echo '&ok=2&';
}
?>

 

 

 

O que está errado, pois quando texto no provedor, ao clicar em enviar aparece a mensagem:

"Erro ao enviar"

Compartilhar este post


Link para o post
Compartilhar em outros sites

Poxa será que ninguem até hoje fez um formulárioem flash e php que funcionasse e pudesse postar aqui.

Este exemplo eu baixei deste forum e para mim que sou iniciante , não está funcionando. Talvez eu tenho feitoalgo errado.

Mas alguem poderia analisar e dizer o que está errado.

O provedor que eu estou tentando executar este formulário é o www.zymic.com e lá diz na home do site que aceita php.Me ajudem aí pessaol. Não aguento mais escrevwe em foruns sobre istp, mas tudo que eu baixo e tento fazer igual, não funciona.

Será que sou tão burro assim....

Compartilhar este post


Link para o post
Compartilhar em outros sites

Oi amigo desculpe a demora :)

 

Ando meio sem internet...

No link disponivel para download você baixou... trocou seu e-mail por um e-mail valido no php e testou??

 

Sem alterar absolutamente nada no código???

Se sim e o e-mail chegou com as respostas muito bem!!!

 

Agora se não chegou verifique se você precisa fazer autentificação de smtp... ou coisa parecida.

 

Agora se funcionou pefeitamente e você simplesmente alterou o layout como campos de texto etc

 

Você lembrou de instanciar os mesmos???

Pois o código é todo com base em instancias.

 

Qualquer duvida fique a vontade em perguntar

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ola Bersek

Como você pode ver no tópico anterior eu fiz exatamente com explicado no FormFacil que você indicou.

Coloquei meu email no PHP coloquei as instancias no fla, tudo certo.

Quando vou aceeso minha pagina e testo o formulário preenchendo os dados e clicando em enviar, depois de alguns segundos aparece a mensagem de status Erro ao enviar"

Isto é o que acontece. Não teria um jeito de eu enviar para você o arquivo fla e o PHP em particular para você analisar e ver o que está errado.

Já testei o servidor para ver se aceita função mail hp e deu positivo...Realmente não sei o que está errado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom, eu uso esse form tbm, mas com a função de anexo e sem a mensagem, e vejo que tem algumas coisas diferentes ao form original.

 

Tenta apenas colocar o Variable ao invés do nome Instanciado, e coloca o resto do código como o original (removendo é claro a parte do anexo), dessa forma deve funcionar. O que parece estar acontecendo é que as variáveis não estão sendo enviadas ao PHP, por isso que está dando erro. Como você alterou o código de Variable pra Instanciado, deve ter esquecido de alterar alguma coisa (q eu tbm naum sei), tenta o original pra ver o que acontece.

 

 

 

 

Bom, qualquer coisa eu tenho um form bem simples de envio que montei usando esse fórum e outros, mas é em ASP, é coisa fácil. Eu simplifiquei ele de forma que deve funcionar apenas no copy e paste :D

 

Dá pra usar o seu flash da maneira que ele está, é só deixar tudo com nome instanciado e pronto (apenas confira pra ver se todos os campos batem).

 

Eu alterei o nome do campo 'status' para 'alerta', pois as vezes pode dar conflito, já que status é uma variavel global (pelo menos pra mim ela fica azul :D), e adicionei 'status2' que é a mensagem que aparece no código ASP.

 

Ao testar, não esqueça de ver a caixa de Spam, pq as vezes vai pra lá.

 

Action Script no Frame:

nome.text = "";
email.text = "";
assunto.text = "";
alerta.text = "";

function clearFields() {
	nome.text = "";
	email.text = "";
	assunto.text = "";
	alerta.text = "";
}

function valida() {

	if ((nome.text == "") || (email.text == "") || (assunto.text == "")) {
		alerta.text = "Favor preencher os campos!";
	} else {
		alerta.text = "Enviando a mensagem...";
		envia();
	}
}

function envia() {
	var sendVars = new LoadVars();
	sendVars.nome = nome.text;
	sendVars.email = email.text;
	sendVars.assunto = assunto.text;
	sendVars.load("aspMail.asp?"+sendVars.toString());
	sendVars.onLoad = function(ok) {
		if (ok) {
			if (this.status2) {
				alerta.text = this.status2;
				clearFields();
			} else {
				alerta.text = this.status2;
			}
		}
	};
}

Botão Enviar:

on (release) {
	valida();
}

Botão Limpar:

on (release) {
	clearFields();
}

Código ASP (aspmail.asp)

<%@ Language=VBScript %>
<%
 Dim myMail, fields2, f1, f2, f3

 f1 = "Nome: "  & Request("nome") & vbcrlf
 f2 = "Email: "  & Request("email") & vbcrlf
 f3 = "Mensagem: " & Request("assunto")  & vbcrlf
 fields2 = f1 & f2 & f3

 Set myMail = CreateObject("CDONTS.NewMail")

 myMail.From = request("email")
 myMail.To = "email@email.com.br"
 myMail.subject ="Fale Conosco"
 myMail.MailFormat = 1
 myMail.Body = fields2
myMail.Send 
 Set myMail = Nothing
 Response.write "status2=Mensagem enviada com sucesso!"

%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom jocamo

Ter tem como me enviar só clicar ali na opção de envio de e-mail pra mim e pegar meu e-mail...

 

Agora o form que você passou esta correto... se ta retornando o valor erro ao enviar signfica que o $ok = @mail ta funcionando :)

 

E ta retornando falso e por isso não ta enviando... ou seja acho que seu serviço de e-mails (se for uol...) usa SMTP e ai meu código não serve mesmo você tem que procurar um form de SMTP

 

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.