Jump to content
Fórum Script Brasil
  • 0

Formulario não funciona


AlbertoRT

Question

Tenho um formulário "Contato.html" que funcionava perfeitamente.

Depois que entrei com o campo "Estado" não fucionou mais. Apresenta Erro na pagina sendmail.asp linha 64

Formulário:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript">
//<![CDATA[
window.onload = function(){
        id('form1').onsubmit = function(){
                var erro = 0;
                erro = !obr( 'Nome' ) ? erro+1 : erro;
                erro = !obr( 'Estado' ) ? erro+1 : erro;
        erro = !obr( 'Email' ) ? erro+1 : erro;
                erro = !obr( 'Assunto' ) ? erro+1 : erro;
                erro = !obr( 'Mensagem' ) ? erro+1 : erro;
                
                 if( !checkMail( id('Email') ) )

                {

                   alert( 'Digite um email válido!' );

                       return false;
                }

                if( erro>0 )
                        return false;
        };
};
function obr( campo ){
        if( id(campo).value=='' || id(campo).value==0 ){
                alert( 'O campo '+campo+' é obrigatório!' );
                return false;

        }
        else
                return true;


        if( id(campo).value==' ' || id(campo).value==0||id(campo).value=='Escolha uma opção/assunto'){
                alert( 'O campo '+campo+' é obrigatório!' );
                return false;
        }
        else
                return true;
        }

        if( id(campo).value==' ' || id(campo).value==0||id(campo).value=='Estado'){
                alert( 'O campo '+campo+' é obrigatório!' );
                return false;
        }
        else
                return true;
        }



function id( el ){
        return document.getElementById( el );
}
function checkMail(mail){
    var er = new RegExp(/^[A-Za-z0-9_\-\.]+@[A-Za-z0-9_\-\.]{2,}\.[A-Za-z0-9]{2,}(\.[A-Za-z0-9])?/);
    if(typeof(mail) == "string"){
        if(er.test(mail)){
            return true; }
    }else if(typeof(mail) == "object"){
        if(er.test(mail.value)){
            return true;
        }
    }else{
        return false;
    }
}
//]]>
</script>
        <title>Blog Teixeira - Contato</title>
        
        <meta name="description" content="divulgar diversos assuntos" />
        <meta http-equiv="Content-Type"  content="text/html; charset=utf-8" />
        <meta content="pt-br" name="language" />
        <meta content="Teixeira" name="title" />
        <link type="text/css" media="all" rel="stylesheet" href="css/geral.css" />
        <link type="text/css" media="all" rel="stylesheet" href="css/formulario.css" />
    </head>
    <body>
        <!--Início da div tudo-->
        <div id="tudo">
        <!--Início da div topo-->
        <div id="topo">
            <h1>Blog <span>do Teixeira</span></h1>
        <!--Início da div sobre-->
        <div id="sobre">
            <p>Teixeira teve um bom aproveitamento em diversos cursos da Área de WebDesign e WebMaster. Atualmente aposentado tem esse     espaço para postar comentários, artigos, reportagens, pesquisas. Tudo que ache relevante para o debate e a livre expressão    de opiniões.</p>
        </div>
        <!--Fim da div sobre-->
        
        <!--Início da div nav-->
        <ul id="nav">        
            <li><a href="index.html">Inicial</a></li>
            <li><a href="politica.html">Política</a></li>
            <li><a href="hobby.html">hobby</a></li>
            <li><a href="informatica.html">Informática</a></li>
            <li><a href="religiao.html">Religião</a></li>
            <li><a href="pesquisa.html">Pesquisa</a></li>
            <li><a href="samba.html">Samba</a></li>
            <li><a href="index.html">Eu indico</a></li>
            <li><a href="blog.html">Blog</a></li>
        </ul>
        </div>
        <!-- Fim da div#topo -->
        
        <!--Início da div principal contato--> 
        <div id="principal-contato">
        <form method="post" id="form1" action="sendmail.asp" name="Inputform"/>
        <input type="hidden" name="email" value="carlos.teixeira@terra.com.br"/> 
            <table width="986" id="table">
                <tbody>
                    <tr>
                        <td id="td" colspan="2">
                         <p class="p-top">Todas as mensagens serão lidas, analisadas e publicadas em seguida.<br />
                          Muito Obrigado.<br />
                          1 - Serão, automaticamente, descartados os comentários que contenham insultos, agressões e ofensas;<br/>
                          2 - que contenham qualquer espécie de anexo ou link, casos extremos contatar proprietário do site. </p>
                      </td>
                    </tr>
                    <tr>
                        <td  id="td-nome"><span>Nome:</span></td>
                        <td><input type="text" name="name" id="Nome" size="60"/></td>
                    </tr>
                    
                     <tr>
                        <td id="td-estado"><span>Estado:</span></td>
                        <td>
                        <select name="Estado" id="Estado">
                            <option value="0">Estado</option>
                            <option value="AC">AC</option>
                            <option value="AL">AL</option>
                            <option value="AM">AM</option>
                            <option value="AP">AP</option>
                            <option value="BA">BA</option>
                            <option value="CE">CE</option>
                            <option value="DF">DF</option>
                            <option value="ES">ES</option>
                            <option value="GO">GO</option>
                            <option value="MA">MA</option>
                            <option value="MG">MG</option>
                            <option value="MS">MS</option>
                            <option value="MT">MT</option>
                            <option value="PA">PA</option>
                            <option value="PB">PB</option>
                            <option value="PE">PE</option>
                            <option value="PI">PI</option>
                            <option value="PN">PN</option>
                            <option value="RJ">RJ</option>
                            <option value="RN">RN</option>
                            <option value="RO">RO</option>
                            <option value="RR">RR</option>
                            <option value="RS">RS</option>
                            <option value="SC">SC</option>
                            <option value="SE">SE</option>
                            <option value="TO">TO</option>                                                     
                        </select>
                        </td>
                    </tr>
                    
                    <tr> 
                        
                    <tr>
                        <td id="td-email"><span>email:</span></td>
                        <td><input type="text" name="mailfrom" id="Email" size="40"/></td>
                   </tr>
                    <tr>
                        <td id="td-opcao"><span>Opção/assunto:</span></td>
                        <td>
                        <select name="Assunto" id="Assunto">
                            <option value="0">Escolha uma opção/Assunto</option>
                            <option value="Hobby">Hobby</option>
                            <option value="Informática">Informática</option>
                            <option value="Pesquisa">Pesquisa</option>
                            <option value="Política">Política</option>
                            <option value="Prestação de Serviços">Prestação de Serviços</option>
                            <option value="Religião">Religião</option>
                            <option value="Samba">Samba</option>
                        </select>
                        </td>
                    </tr>
                    <tr>
                        <td id="td-mensagem"><span>Comentários:</span></td>
                        <td>
                        <textarea name="mensagem" cols="80" rows="10" id="Mensagem"></textarea> 
                        </td>
                    </tr>
            <tr>
                        <td class="td-mensagem"><span> </span></td>
                        <td><input type="submit" name="Enviar" value="Enviar" />
                            <input type="reset" value="Cancelar" /></td>
                  </tr>
                </tbody>
          </table>
            
        </form>
        </div>
        <!-- Fim da div principal contato -->
        
        <!--Início da div#rodape -->
        <div id="rodape">
        <p>Site criado em 2010 por Teixieira - Copyright &reg;  2010 - Rio de Janeiro/RJ</p>
        </div>  
        <!--Fim da div#rodape-->
        </div>
        <!--Fim da div#tudo-->
    </body>
</html>
Pagina sendmail.asp Erro na linha 64 mensagem: message.send
CDO.Message.1 error '8004020d'
At least one of the From or Sender fields is required, and neither was found.
/sendmail.asp, line 64
sendmail.asp
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<%Response.Charset="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>

<%
' Cria os objetos para envio de e-mail
Set message = Server.CreateObject("CDO.Message")
Set conf = Server.CreateObject("CDO.Configuration")
Set param = conf.Fields

param("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
param("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "localhost"
param.Update

'Obtendo valores digitados no formulário e armazená-los nas variáveis locais
strFrom = Request.Form("mailfrom")
strTo = Request.Form("email")
strSubject = Request.Form("assunto")
strBody = Request.Form("mensagem")
strSubject = Request.Form("estado")

'Retira caracteres inválidos que possam ser inclusos por acesso não autorizado
'para envio de Spam
aux1 = chr(13)
aux2 = chr(10)
regex= " | |cc:|bcc:|"& aux1 &"|"& aux2
Set objRegExp = New RegExp
objRegExp.Pattern = regex
objRegExp.IgnoreCase = True
objRegExp.Global = True

strFrom = objRegExp.Replace(strFrom,"")
strTo = objRegExp.Replace(strTo,"")
strSubject = objRegExp.Replace(strSubject,"")

Set message.configuration = conf
'Atribui-se os valores para as propriedades do objeto
message.From = strFrom
message.To = strTo
message.Subject = StrSubject
message.textBody = "Mensagem: <br> <br>" & _
"Nome:&nbsp;&nbsp;&nbsp;"& Request("name")& "<br>" & _
"Estado:&nbsp;&nbsp;&nbsp;"& Request("estado")& "<br>" & _
"E-Mail:&nbsp;&nbsp;&nbsp;"& Request("mailfrom")& "<br>" & _
"Assunto:&nbsp;&nbsp;&nbsp;"& Request("assunto")& "<br>" & _
"Mensagem:&nbsp;&nbsp;&nbsp;"& Request("mensagem")


message.HTMLBody = message.textBody 'Envia no formato HTML

' Outras propriedades que podem ser usadas, mas que deixaremos comentadas neste exemplo:
' - Você pode enviar e-mail HTML, arquivos anexados, etc;
' - Você pode mudar muitos aspectos da mensagem;
'message.HTMLBody = StrBody 'Envia no formato HTML
'message.Cc = "conta1@dominio.com.br;conta2@dominio.com.br" 'Com Cópia
'message.Bcc = "conta3@dominio.com.br;conta4@dominio.com.br" 'Com Cópia Oculta
'message.Fields("urn:schemas:httpmail:importance").Value = 2 '(0=Baixa, 1=Normal, 2=Alta)
'message.AddAttachment "I:InetpubWwwrootSuaContaNomeDoArquivo" 'Anexa arquivo na mensagem

' Envia a mensagem!
message.send

'Atribui nothing ao objeto para que ele se torna inválido imediatamente após o envio
'Não podendo ser utilizado dois "sends" para o mesmo objeto New Mail
Set message = nothing

Msg = "Mensagem enviada com sucesso!"

Response.Write "<html><body><table align=center><tr><td>&nbsp;</td></tr>"
Response.Write "<tr><td>&nbsp;</td></tr>"
Response.Write "<tr><td><font face=Verdana><b>"& Msg &"</b></font></td></tr>"
Response.Write "</body></html>"
%>
<%
Response.Redirect "http://informacaoteixeira.com.br/confirma_formulario.html"
%>
</head>

Link to comment
Share on other sites

1 answer to this question

Recommended Posts

  • 0

provavelmente nesse ponto as variaveis são zeradas...

strFrom = objRegExp.Replace(strFrom,"")
strTo = objRegExp.Replace(strTo,"")
strSubject = objRegExp.Replace(strSubject,"")

da uma verificada se o form ta passando os valores ou se é nessa expressão regular ai que o conteudo some.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652k
×
×
  • Create New...