.flaME Postado Junho 12, 2009 Denunciar Share Postado Junho 12, 2009 Olá,Sou novo aqui no fórum e principalmente novo em AS.Estou com problemas na aba de contato de um site,peguei um script na internet e ele funciona mas não muito bem(foi editado é claro), além disso a parte de newsletter não funciona.Estou usando AS 2.0 e este é meu script:var news:Array = ["Sim", "Não"];news_cb.dataProvider = news;var assunto:Array = ["Dúvidas", " Seguros e Serviços", "Elogios", "Reclamações", "Outros"];assunto_cb.dataProvider = assunto;var envia:LoadVars = new LoadVars();enviar_btn.onPress = function() { if (nome_txt.text == "") { status_txt.text = "Preencha o campo Nome corretamente"; }if (end_txt.text == "") { status_txt.text = "Preencha o campo Endereço corretamente"; }if (bairro_txt.text == "") { status_txt.text = "Preencha o campo Bairro corretamente"; }if (cidade_txt.text == "") { status_txt.text = "Preencha o campo Cidade corretamente"; }if (tel_txt.text == "") { status_txt.text = "Preencha o campo Telefone corretamente"; } else if (email_txt.text == "") { status_txt.text = "Preencha o campo E-mail corretamente"; } else if ((email_txt.text.indexOf("@") == -1 || email_txt.text.indexOf(".") == -1)) { status_txt.text = "Preencha o campo E-mail corretamente"; } else if (mensagem_txt.text == "") { status_txt.text = "Preencha o campo Mensagem corretamente"; } else { envia.nome = nome_txt.text; envia.email = email_txt.text; envia.cidade = cidade_txt.value; envia.assunto = assunto_cb.value; envia.mensagem = mensagem_txt.text; envia.news = news_cb.value; envia.end = end_txt.text; envia.tel = tel_txt.text; envia.bairro = bairro_txt.text; loadVariablesNum("news.php",0,"POST");(aqui não sei se devo colocar desta forma ou como envia.sendAndLoad("news.php", envia, "POST"); } status_txt.text = "Enviando mensagem"; envia.sendAndLoad("contato.php", envia, "POST"); };envia.onLoad = function(ok) { if (ok) { if (this.erro == 0) { limpa(); status_txt.text = "Mensagem enviada com sucesso"; } else { status_txt.text = "Erro ao enviar E-mail"; } }};limpar_btn.onPress = function() { limpa();};function limpa() { programas = ""; nome_txt.text = ""; end_txt.text = ""; bairro_txt.text = ""; cidade_txt.text = ""; email_txt.text = ""; tel_txt.text = ""; mensagem_txt.text = ""; status_txt.text = ""; assunto_cb.selectedIndex = 0; news_cb.selectedIndex = 0; tel_txt.restrict="0-9";}meus phpscontato.php:<?php $nome = utf8_decode(@$_POST['nome]); $end = utf8_decode(@$_POST['end']); $bairro = utf8_decode(@$_POST['bairro']); $tel = utf8_decode(@$_POST['tel']); $email = utf8_decode(@$_POST['email']); $cidade = utf8_decode(@$_POST['cidade']); $assunto = utf8_decode(@$_POST['assunto']); $mensagem = utf8_decode(@$_POST['mensagem']); $news = utf8_decode(@$_POST['news']); $para = "meu e-mail"; if ($nome != "" && $email != "" && $cidade != "" && $assunto != "" && $mensagem != "" && $bairro != "" && $tel != "" && $end != "") { $corpo = '<html><head><title>'.$assunto.'</title></head><body>'; $corpo .= 'Nome: '.$nome.'<br />E-mail: '.$email.'<br />Endereço: '.$end.'<br />Bairro: '.$bairro.'<br />Telefone: '.$tel.'<br />Quer receber a Newsletter: '.$news.'<br />Cidade: '.$cidade.'<br />'; $corpo .= 'Assunto: '.$assunto.'<br />Mensagem: '.$mensagem; $headers = 'MIME-Version: 1.0' . "\r\n"; $headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n"; $headers .= 'From:'. $email . "\r\n"; mail($para, $assunto, $corpo, $headers); print 'erro=0'; } else { print 'erro=1'; }?>e news.php:<?$arquivo = "newsletter.txt";$newline = "nome_txt= ".$_POST["nome]."; tel_txt= ".$_POST["tel"]." email_txt= ".$_POST["email"]." ";$open = fopen($arquivo,"a+");$write = fwrite($open,$newline);?>Problemas:-O E-mail chega certo porém em "Cidade:" independente da resposta ele me da o valor undefined-Se a pessoa não preenche alguma parte do formulário ele não diz "Preencha o campo..." ele simplesmente avisa com um "Erro ao enviar E-mail"-O newsletter não funciona, ou seja, eu posso até criar um newsletter.txt mas nada é escrito nele, sempre esta em branco.*O flash não encontra nenhum erro.Bom, é isso.Quem puder ajudar fico muito agradecido pois estou à um tempão tentando arrumar,já pesquisei sobre o assunto e tentei de formas diferentes mas nada...Obrigado pela paciência e pela disposição. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Pooh Postado Junho 12, 2009 Denunciar Share Postado Junho 12, 2009 Olá ^_^ ainda não analisei todo seu código mas pela breve olhada cidade jamais terá um valor pois o valor requisitado é:envia.cidade = cidade_txt.value; quando deveria ser: envia.cidade = cidade_txt.text; Simples até ai :) Sua cadeia de ifs me parece bem confusa, alguns lugares com else if outros apenas com if, se você quer testar o conteudo de um campo seria bom se você testasse se algo foi digitado assim: if (nome_txt.length < 1) {é menos trabalhoso para o seu script e tem o mesmo efeito :) podendo até limitar um numero minimo de caracteres como por exemplo se pedir nome completo, dificilmente vai haver 1 nome com menos de 5 caracteres então podemos limitar para '<= 5'De acordo com seu script se você preencher somente o Telefone, o E-mail e a Mensagem ele já vai enviarE bom amigo já sobre o funcionamento do script, posso até analisar, só uma coisa, nos temos vários exemplos de scripts de formularios todos funcionando no forum... não tem muita razão de vir um novo a cada hora;Mas se você realmente precisar usar este, lhe ajudarei a achar o erro;Tente prestar mais atenção em seu código;Bom o seu fopen você pode usar apensa em modo 'a' jaque você não está lendo 'a+' = read and write mas deveria sim estar gravando nem que fosse somente as partes 'nome_txt='Se não gravou é por falta de execução do script ou por falta do 'fclose' você abriu para gravação mas n fechou o arquivo depois;'fclose($arquivo);' no final da instruçãoDe uma reanalizada no seu formulario antes de mais perguntas :)espero sua respostaAbraços!Pooh Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 .flaME Postado Junho 12, 2009 Autor Denunciar Share Postado Junho 12, 2009 Muito obrigado Pooh,ainda não testei mas me pareceu uma resposta bem construtivaeu realmente procurei em varios foruns e passei dias no google atras de um bom scriptporém confesso que não pesquisei neste forum pois não conhecia ele,mais tarde dou uma boa olhadamas obrigado pelo esclarecimento e paciência sobre minha pergunta.de noite irei modificar o script e tentar arrumar o php (sinto que não vai funcionar mesmo)Pode deixar que vou EDITAR este post mais tarde com os resultadosObrigado novamente, foi difícil achar alguém que me ajudasse nos últimos dias Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
.flaME
Olá,
Sou novo aqui no fórum e principalmente novo em AS.
Estou com problemas na aba de contato de um site,
peguei um script na internet e ele funciona mas não muito bem(foi editado é claro), além disso a parte de newsletter não funciona.
Estou usando AS 2.0 e este é meu script:
meus phps
contato.php:
e news.php:
Problemas:
-O E-mail chega certo porém em "Cidade:" independente da resposta ele me da o valor undefined
-Se a pessoa não preenche alguma parte do formulário ele não diz "Preencha o campo..." ele simplesmente avisa com um "Erro ao enviar E-mail"
-O newsletter não funciona, ou seja, eu posso até criar um newsletter.txt mas nada é escrito nele, sempre esta em branco.
*O flash não encontra nenhum erro.
Bom, é isso.
Quem puder ajudar fico muito agradecido pois estou à um tempão tentando arrumar,
já pesquisei sobre o assunto e tentei de formas diferentes mas nada...
Obrigado pela paciência e pela disposição.
Link para o comentário
Compartilhar em outros sites
2 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.