Ir para conteúdo

Arquivado

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

Guipo

Formulario ASP Nao funciona Firefox

Recommended Posts

Olá a todos! Estou com um grande problema:

 

Um formulario em asp que envia os dados dos cadastrados por e-mail e esta funcionando corretamente no internet explorer, porém no firefox, opera e chrome não funciona como deveria. O erro acontece quando se tenta enviar um e-mail com campo obrigatorio nao preenchido. Mesmo que o usuario nao preencha o campo obrigatorio, ele aparece a informação mas envia o e-mail mesmo assim. Quer dizer, ele esta validando corretamente, mas mesmo assim esta enviando o e-mail ao invés de travar na tela para que o usuário preencha o dado que esta faltando. Procurei no forum algo parecido mas não achei será que alguem pode ajudar?

using System;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using SinfaerjBLL;
using System.Net.Mail;
public partial class sindicato_default : System.Web.UI.Page
{
	string mailBody ;
protected void Page_Load(object sender, EventArgs e)
{
	//int ID_Pagina;
	//ID_Pagina = 27;

	//PaginaBLL dados = new PaginaBLL();

	//try
	//{
	//    dados.buscaPagina(ID_Pagina);
	//    lb_titulo.Text = dados.PaginaTitulo;
	//    lb_texto.Text = dados.PaginaConteudo;
	//}
	//catch (Exception ex)
	//{
	//    error_message.Text = ex.Message;
	//}
}
protected void btComentariosEnviar_Click(object sender, EventArgs e)
{

	//cria objeto com dados do e-mail 
	MailMessage Mail = new MailMessage();

	//remetente do e-mail 
	Mail.From = new MailAddress("xxxxxxxx");

	//destinatários do e-mail 
	//Mail.To.Add(cmbPara.SelectedValue);
	Mail.To.Add("xxxxxxx");
	Mail.Bcc.Add("xxxxxxxxx");
	//Mail.ReplyTo = new MailAddress(txNome.Text + " <" + txEmail.Text + ">");
	//Mail.Headers.Add("Reply-To", txEmail.Text);
	Mail.IsBodyHtml = true;
	Mail.Subject = "SINFAERJ - Recadastramento de Associado";

	mailBody = mailBody + "<font face=verdana size=2>";
	mailBody = mailBody + "</font><br>Nome: <font color=blue>" + txNome.Text;
       mailBody = mailBody + "</font><br>Crf: <font color=blue>" + txCrf.Text;
       mailBody = mailBody + "</font><br>CPF: <font color=blue>" + txCpf.Text;
       mailBody = mailBody + "</font><br>RG: <font color=blue>" + txRg.Text;
	mailBody = mailBody + "</font><br>Tel. Residencial: <font color=blue>" + txTelResidencial.Text;
	mailBody = mailBody + "</font><br>Tel. Celular: <font color=blue>" + txTelCelular.Text;
	mailBody = mailBody + "</font><br>Tel. Comercial: <font color=blue>" + txTelComercial.Text;
	mailBody = mailBody + "</font><br>End. Residencial: <font color=blue>" + txEndResidencial.Text;
	mailBody = mailBody + "</font><br>Bairro: <font color=blue>" + txBairro.Text;
	mailBody = mailBody + "</font><br>Município: <font color=blue>" + txMunicipio.Text;
	mailBody = mailBody + "</font><br>CEP: <font color=blue>" + txCEP.Text;
	mailBody = mailBody + "</font><br>E-mail: <font color=blue>" + txEmail.Text;
	mailBody = mailBody + "</font><p>Com qual frequência você lê seus e-mails? <br><font color=blue>" + rbFrequencia.Text;
	mailBody = mailBody + "</font><p>Onde você acessa a internet? <br><font color=blue>" + rbLocal.Text;
	mailBody = mailBody + "</font><p>Tempo de formado? <br><font color=blue>" + rbFormado.Text;
	mailBody = mailBody + "</font><p>Pertence a alguma entidade de classe? <br><font color=blue>" + rbClasse.Text + " " + txClasseQual.Text;
	mailBody = mailBody + "</font><p>Segmento de atuação: <br><font color=blue>" + rbSegmento.Text + " " + txSegmentoOutros.Text;

	mailBody = mailBody + "</font><p>Empresa: <font color=blue>" + txEmpresa1.Text;
	mailBody = mailBody + "</font><br>Endereço de trabalho: <font color=blue>" + txEndComercial1.Text;
	mailBody = mailBody + "</font><br>Município: <font color=blue>" + txMunicipio1.Text;
	mailBody = mailBody + "</font><br>CGC: <font color=blue>" + txCGC1.Text;

	mailBody = mailBody + "</font><p>Empresa: <font color=blue>" + txEmpresa2.Text;
	mailBody = mailBody + "</font><br>Endereço de trabalho: <font color=blue>" + txEndComercial2.Text;
	mailBody = mailBody + "</font><br>Município: <font color=blue>" + txMunicipio2.Text;
	mailBody = mailBody + "</font><br>CGC: <font color=blue>" + txCGC2.Text;
	mailBody = mailBody + "</font>";


	Mail.Body = mailBody;

	//Para evitar problemas de caracteres "estranhos", configuramos o charset para "ISO-8859-1" 
	Mail.SubjectEncoding = System.Text.Encoding.GetEncoding("ISO-8859-1");
	Mail.BodyEncoding = System.Text.Encoding.GetEncoding("ISO-8859-1");


	SmtpClient objSmtp = new SmtpClient("mail.iwi.com.br");

	try
	{
		objSmtp.Send(Mail);
		lb_email_retorno.ForeColor = System.Drawing.Color.Blue;
		lb_email_retorno.Text = "Seus dados foram enviados com sucesso !";
		tabela.Visible=false;
	}
	catch (Exception ex)
	{
		lb_email_retorno.ForeColor = System.Drawing.Color.Red;
		lb_email_retorno.Text = "Ocorreram problemas no envio do e-mail. Error = " + ex.Message;
		tabela.Visible = false;
	}

	txNome.Text= "";
       txCrf.Text = "";
       txCpf.Text = "";
       txRg.Text = "";
	txTelResidencial.Text = "";
	txTelCelular.Text = "";
	txTelComercial.Text = "";
	txEndResidencial.Text = "";
	txBairro.Text = "";
	txMunicipio.Text = "";
	txCEP.Text = "";
	txEmail.Text = "";
	rbFrequencia.Text = "";
	rbLocal.Text = "";
	rbFormado.Text = "";
	rbClasse.Text = "";
	txClasseQual.Text = "";
	rbSegmento.Text = "";
	txSegmentoOutros.Text = "";

	txEmpresa1.Text = "";
	txEndComercial1.Text = "";
	txMunicipio1.Text = "";
	txCGC1.Text = "";

	txEmpresa2.Text = "";
	txEndComercial2.Text = "";
	txMunicipio2.Text = "";
	txCGC2.Text = "";

	//excluímos o objeto de e-mail da memória 
	Mail.Dispose();

}
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu uso a validação via ajax num formulário e ele só envia se tudo estiver realmente preenchido.

 

http://wbruno.com.br/blog/2011/03/21/validar-enviar-formulario-ajax-usando-jquery-validate/ o que uso é baseado neste aqui do nosso colega William Bruno

 

No seu caso, onde está a chamada para a pagina enviar.php se não me engano, você coloca a pagina .asp que fará o tratamento e envio dos dados.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Vinicius, desculpe abusar da sua boa vontade, mas como não posso nem me considerar ainda nível iniciante, eu não achei este campo que você falou e não entendi exatamente o que devo fazer. Poderia me dizer em que linha faço isto? Desculpe o abuso.

 

Abraços e desde já muito obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Guipo, boa tarde!

 

 

Acho que o problema está em seu formulário, você está utilizando as tags "id" e "name" no formulário? Poste seu form para ver se tem alguma coisa, pelo que vi este código é C# e apenas processa os campos e envia.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Crisaum, segue abaixo o form e muito obrigado também!

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Recadastro.aspx.cs" Inherits="sindicato_default" %>


<%@ Register Src="~/Topo.ascx" TagName="Topo" TagPrefix="uc1" %>
<%@ Register Src="~/inc_Lateral.ascx" TagName="inc_Lateral" TagPrefix="uc2" %>
<%@ Register Src="~/rodape.ascx" TagName="rodape" TagPrefix="uc3" %>




<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
   <title>Recadastramento</title>
<link href="~/css/baseStyle.css" rel="stylesheet" type="text/css" />
<link href="~/css/menuStyle.css" rel="stylesheet" type="text/css" />
<link href="~/css/menuStyle.css" rel="stylesheet" type="text/css" />
<link href="~/css/menuStyle.css" rel="stylesheet" type="text/css" />
<link href="~/css/menuStyle.css" rel="stylesheet" type="text/css" />
<link href="~/css/menuStyle.css" rel="stylesheet" type="text/css" />
<link href="~/css/menuStyle.css" rel="stylesheet" type="text/css" />
</head>
<body>
   <form id="form1" runat="server">

   <table width="700" height="100%" align="center" cellpadding=0 cellspacing=0 bgcolor=#ffffff style="border-left:1px solid #808080; border-right:1px solid #808080; font-size: 18px;">
   <col style="width:180px" />
   <col style="width:520px" />
   <tr>
	<td colspan=2><uc1:Topo ID="Topo1" runat="server" /></td>
   </tr>
   <tr>
	<td class="lateral">
		<uc2:inc_Lateral ID="Inc_Lateral1" runat="server" />
		 
	</td>
	<td class="conteudo">
		<table width=100%>
		<tr>
			<td class=erro><asp:Label ID="error_message" runat="server" Text=""></asp:Label></td>
		</tr>
		<tr>
			<td class=pagina_titulo>Recadastramento </td>
		</tr>
		<tr>
			<td class=pagina_conteudo><font size="-1" font color="#FF0000"> Caso os <i>campos obrigatórios(*)</i> não sejam preenchidos corretamente, o recadastramento <b>NÃO</b> será efetuado em nosso sistema.</font></td>
		</tr>
		<tr>
			<td class=pagina_conteudo valign=top style="height: 395px">
			<asp:ValidationSummary ID="ValidationSummary1" runat="server" />
			<div align=center><asp:Label ID="lb_email_retorno" runat="server" Font-Bold=true></asp:Label><br /></div>
			<div runat=server id=tabela>
				<table>
				<tr>
					<td class=pagina_conteudo align=right>
						<strong>Nome:</strong></td>
					<td><asp:TextBox ID="txNome" runat="server" Width="350px"></asp:TextBox>
						<font color="#FF0000">*</font>
				  <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="txNome"
							Display="None" ErrorMessage="Preencha seu nome."></asp:RequiredFieldValidator></td>
				</tr>
                   <tr>
					<td class=pagina_conteudo align=right>
						<strong>CRF-RJ:</strong></td>
					<td><asp:TextBox ID="txCrf" runat="server" Width="350px"></asp:TextBox>
                       <font color="#FF0000">*</font>
                       	<asp:RequiredFieldValidator ID="RequiredFieldValidator7" runat="server" Display="None"
                            ErrorMessage="Preencha seu Crf." ControlToValidate="txCrf"></asp:RequiredFieldValidator></td>
				</tr>
                   <tr>
					<td class=pagina_conteudo align=right>
						<strong>CPF:</strong></td>
					<td><asp:TextBox ID="txCpf" runat="server" Width="350px"></asp:TextBox>
                       <font color="#FF0000">*</font>
						<asp:RequiredFieldValidator ID="RequiredFieldValidator8" runat="server" ControlToValidate="txCpf"
							Display="None" ErrorMessage="Preencha seu cpf."></asp:RequiredFieldValidator></td>

                           <tr>
					<td class=pagina_conteudo align=right>
						<strong>RG:</strong></td>
					<td><asp:TextBox ID="txRg" runat="server" Width="350px"></asp:TextBox>

				<tr>
				<tr>
					<td class=pagina_conteudo align=right>
						<strong>Tel. Residencial:</strong></td>
					<td><asp:TextBox ID="txTelResidencial" runat="server" Width="350px"></asp:TextBox></td>
				</tr>
				<tr>
					<td class=pagina_conteudo align=right>
						<strong>Tel. Celular:</strong></td>
					<td><asp:TextBox ID="txTelCelular" runat="server" Width="350px"></asp:TextBox></td>
				</tr>
				<tr>
					<td class=pagina_conteudo align=right>
						<strong>Tel. Comercial:</strong></td>
					<td><asp:TextBox ID="txTelComercial" runat="server" Width="350px"></asp:TextBox></td>
				</tr>
				<tr>
					<td class=pagina_conteudo align=right>
						<strong>End. Residencial:</strong></td>
					<td><asp:TextBox ID="txEndResidencial" runat="server" Width="350px"></asp:TextBox>
                       <font color="#FF0000">*</font>
						<asp:RequiredFieldValidator ID="RequiredFieldValidator3" runat="server" Display="None"
							ErrorMessage="Preencha seu endereço completo." ControlToValidate="txEndResidencial"></asp:RequiredFieldValidator></td>
				</tr>
				<tr>
					<td class=pagina_conteudo align=right style="height: 45px">
						<strong>Bairro:</strong></td>
					<td style="height: 45px"><asp:TextBox ID="txBairro" runat="server" Width="350px"></asp:TextBox>

				</tr>
				<tr>
					<td class=pagina_conteudo align=right>
						<strong>Município:</strong>
					</td>
					<td><asp:TextBox ID="txMunicipio" runat="server" Width="350px"></asp:TextBox>

				</tr>
				<tr>
					<td class=pagina_conteudo align=right>
						<strong>CEP:</strong>
					</td>
					<td><asp:TextBox ID="txCEP" runat="server" Width="350px"></asp:TextBox>
                       <font color="#FF0000">*</font>
						<asp:RequiredFieldValidator ID="RequiredFieldValidator5" runat="server" Display="None"
							ErrorMessage="Preencha seu CEP." ControlToValidate="txCEP"></asp:RequiredFieldValidator></td>
				</tr>
				<tr>
					<td class=pagina_conteudo align=right>
						<strong>E-mail:</strong></td>
					<td><asp:TextBox ID="txEmail" runat="server" Width="350px"></asp:TextBox>
                       <font color="#FF0000">*</font>
						<asp:RegularExpressionValidator id="RegularExpressionValidator1" runat="server" Width="312px" Display="None" ErrorMessage="Preencha seu e-mail corretamente" ControlToValidate="txEmail" ValidationExpression="\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*"></asp:RegularExpressionValidator> 
						<asp:RequiredFieldValidator id="RequiredFieldValidator2" runat="server" Width="315px" Display="None" ErrorMessage="Preencha seu e-mail." ControlToValidate="txEmail"></asp:RequiredFieldValidator>
					</td>
				</tr>
				</table>

				<br /><br />
				<strong>
					Com qual frequência você lê seus e-mails?<br />
				</strong>
					<asp:RadioButtonList ID="rbFrequencia" runat="server">
						<asp:ListItem>Diariamente</asp:ListItem>
						<asp:ListItem>2 ou mais vezes por semana</asp:ListItem>
						<asp:ListItem>1 vez por semana</asp:ListItem>
						<asp:ListItem>Quinzenalmente</asp:ListItem>
						<asp:ListItem>Não acesso e-mail</asp:ListItem>
					</asp:RadioButtonList>

				<br /><br />
				<strong>
					Onde você acessa a internet?<br />
				</strong>
					<asp:RadioButtonList ID="rbLocal" runat="server">
						<asp:ListItem>De casa</asp:ListItem>
						<asp:ListItem>Do Trabalho</asp:ListItem>
						<asp:ListItem>Em casa e no trabalho</asp:ListItem>
						<asp:ListItem>Não acesso a internet</asp:ListItem>
					</asp:RadioButtonList>

				<br /><br />
				<strong>
					Tempo de formado: </strong>
					<asp:RadioButtonList ID="rbFormado" runat="server">
						<asp:ListItem>Menos de 2 anos</asp:ListItem>
						<asp:ListItem>2 a 10 anos</asp:ListItem>
						<asp:ListItem>Mais de 10 anos</asp:ListItem>
					</asp:RadioButtonList>

				<br /><br />
				<strong>
					Pertence a alguma entidade de classe? </strong>
					<asp:RadioButtonList ID="rbClasse" runat="server" RepeatDirection="Horizontal">
						<asp:ListItem>Não</asp:ListItem>
						<asp:ListItem>Sim</asp:ListItem>
					</asp:RadioButtonList>Qual: <asp:TextBox ID="txClasseQual" runat="server"></asp:TextBox>

				<br /><br />
				<strong>
					Segmento de atuação:</strong>
					<asp:RadioButtonList ID="rbSegmento" runat="server" RepeatColumns="2">
						<asp:ListItem>Serviço Público</asp:ListItem>
						<asp:ListItem>Serviço Privado</asp:ListItem>
						<asp:ListItem>Aposentado</asp:ListItem>
						<asp:ListItem>Indústria</asp:ListItem>
						<asp:ListItem>Farmácia de Manipulação</asp:ListItem>
						<asp:ListItem>Farmácia/Drogaria</asp:ListItem>
						<asp:ListItem>Drogaria de Supermercado</asp:ListItem>
						<asp:ListItem>Farmácia Popular (do governo)</asp:ListItem>
						<asp:ListItem>Farmácia Hospitalar</asp:ListItem>
						<asp:ListItem>Oncologia</asp:ListItem>
						<asp:ListItem>Nutrição Parenteral</asp:ListItem>
						<asp:ListItem>Transportadora</asp:ListItem>
						<asp:ListItem>Distribuidora</asp:ListItem>
						<asp:ListItem>Importadora/Exportadora</asp:ListItem>
						<asp:ListItem>Docencia</asp:ListItem>
						<asp:ListItem>Outros</asp:ListItem>
					</asp:RadioButtonList>Em caso de outros, qual:
					<asp:TextBox ID="txSegmentoOutros" runat="server"></asp:TextBox>

				<br /><br />
					<div style="border-right: windowtext 1pt solid; padding-right: 4pt; border-top: windowtext 1pt solid;
						padding-left: 4pt; padding-bottom: 1pt; border-left: windowtext 1pt solid; padding-top: 1pt;
						border-bottom: windowtext 1pt solid; mso-element: para-border-div; mso-border-alt: solid windowtext .5pt">

							EMPRESA: <asp:TextBox ID="txEmpresa1" runat="server"></asp:TextBox>
						<br />
							Endereço de trabalho: <asp:TextBox ID="txEndComercial1" runat="server"></asp:TextBox>
						<br />
							Município: <asp:TextBox ID="txMunicipio1" runat="server"></asp:TextBox>
							C.G.C.: <asp:TextBox ID="txCGC1" runat="server"></asp:TextBox>
						<br />
					</div>
					<br />
					<div style="border-right: windowtext 1pt solid; padding-right: 4pt; border-top: windowtext 1pt solid;
						padding-left: 4pt; padding-bottom: 1pt; border-left: windowtext 1pt solid; padding-top: 1pt;
						border-bottom: windowtext 1pt solid; mso-element: para-border-div; mso-border-alt: solid windowtext .5pt">

							EMPRESA: <asp:TextBox ID="txEmpresa2" runat="server"></asp:TextBox>
						<br />
							Endereço de trabalho: <asp:TextBox ID="txEndComercial2" runat="server"></asp:TextBox>
						<br />
							Município: <asp:TextBox ID="txMunicipio2" runat="server"></asp:TextBox>
							C.G.C.: <asp:TextBox ID="txCGC2" runat="server"></asp:TextBox>
						<br />
					</div>
				<p align=center>
				<asp:Button ID="btComentariosEnviar" runat="server" Text="Enviar" CssClass="coment_button" OnClick="btComentariosEnviar_Click" /> </p>
				</div>	
				<br /><br />
			</td>
		</tr>
		</table>
	</td>
   </tr>

   <tr>
	<td class="rodape" colspan=2>
		<uc3:rodape id="Rodape1" runat="server"></uc3:rodape></td>
   </tr>
   </table>

   </form>
</body>
</html>

 

Vinicius, o formulario é em aspx e o código em C#, não aconsegui achar nenhuma linha em php, espero que não seja uma daquelas coisas que esta na minha frente e não estou vendo. De qualquer forma muito obrigado, ainda tentando resolver.

 

abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Guipo, vou ser sincero contigo, não manjo muito de C#, fiz apenas algumas coisinhas bem simples ... pretendo este ano poder estudar a fundo, mas vamos ao seu problema!

 

Basicamente todas as linguagens transformam todos os códigos em html para exibir no navegador, e a partir dai seguem a mesma base.

 

Normalmente quando um formulário utiliza apenas a tag "id" como no seu exemplo, pode ser que em alguns navegadores não funcionem como deveria. Não me recordo quem lê o que, mas se você utilizar as tags "id" e "name" é muito provável que você aumente dramaticamente a gama de navegadores que poderão ler seu formulário sem problemas.

 

Em todo caso, acho que o mais certo seria mudar seu tópico para a sessão de C#, assim eles poderão te ajudar com mais detalhes e talvez tenha uma forma mais simples de acertar esse impasse.

 

abraço!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Guipo, vou ser sincero contigo, não manjo muito de C#, fiz apenas algumas coisinhas bem simples ... pretendo este ano poder estudar a fundo, mas vamos ao seu problema!

 

Basicamente todas as linguagens transformam todos os códigos em html para exibir no navegador, e a partir dai seguem a mesma base.

 

Normalmente quando um formulário utiliza apenas a tag "id" como no seu exemplo, pode ser que em alguns navegadores não funcionem como deveria. Não me recordo quem lê o que, mas se você utilizar as tags "id" e "name" é muito provável que você aumente dramaticamente a gama de navegadores que poderão ler seu formulário sem problemas.

 

Em todo caso, acho que o mais certo seria mudar seu tópico para a sessão de C#, assim eles poderão te ajudar com mais detalhes e talvez tenha uma forma mais simples de acertar esse impasse.

 

abraço!

 

Muito Obrigado Crisaum, valeu mesmo a tentativa vou pedir pra mudar o tópico de lugar. Abraços!

Compartilhar este post


Link para o post
Compartilhar em outros sites

não só o form é em .net, ele está trabalhando com C#, poste no fórum adequado....

Compartilhar este post


Link para o post
Compartilhar em outros sites

O que postei, se refere ao link que passei. :)

 

E se o formulário é em aspx, posso move-lo para a seção .net onde podem lhe auxiliar melhor.

 

Obrigado Vinicius, então pode mover por favor!

 

Vinicius, tem como você ou outro moderador mover meu tópico de sessão? Ia criar outro topico lá no .net mas achei melhor esperar que fosse movido.

 

Obrigado!

 

Abraços!

 

Alguém pode ajudar? continuo sem conseguir funcionar da forma adequada. Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Quintelab!

 

Teria como você me dar um caminho pra que eu possa fazer um IF, realmente não faço a minima como fazer.

 

Obrigado pela ajuda.

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.