Ted k' 126 Denunciar post Postado Abril 9, 2009 Galera está me acontecendo essa lance aqui: Tenho um formulário em .net com os campos: nome, email.... estou usando classes, usando assim na página default.aspx <%@ Page Language="C#" AutoEventWireup="True" CodeFile="class/Usuarios.aspx.cs" Inherits="Usuario" %> e o formulário está logo abaixo na pagina Usuarios.aspx.cs tenho isso: using System; using System.Data; using System.Data.Odbc; using System.Configuration; using System.Web.UI.WebControls; using FuncoesGerais; public partial class Usuario : System.Web.UI.Page{ // Criando objetos de Funções. Funcoes fn = new Funcoes(); public string sql; // Inserir Usuários no Banco. public void InserirUsuario(object sender, System.EventArgs e){ string var_nome = fn.tratarCaracter(nome.Text); string var_empresa = fn.tratarCaracter(empresa.Text); string var_email = fn.tratarCaracter(email.Text); string var_telefone = fn.tratarCaracter(telefone.Text); string var_celular = fn.tratarCaracter(celular.Text); string var_login = fn.tratarCaracter(login.Text); string var_senha = fn.tratarCaracter(senha.Text); string var_nivel = nivel.Text; string var_status = status.Text; try { sql = "INSERT INTO usuarios (nome, empresa, email, telefone, celular, login, senha, nivel, status, data_cadastro, hora_cadastro, usuario_master, empreendimento) VALUES ('"+var_nome+"', '"+var_empresa+"', '"+var_email+"', '"+var_telefone+"', '"+var_celular+"', '"+var_login+"', '"+var_senha+"', '"+var_nivel+"', '"+var_status+"', '"+fn.formatDate(DateTime.Now)+"', '"+fn.formatTime(DateTime.Now)+"', '0', '"+Convert.ToString(Session["empreendimento"])+"')"; OdbcConnection conn = new OdbcConnection(fn.parteConexao()); OdbcCommand comando = new OdbcCommand(sql, conn); conn.Open(); comando.ExecuteNonQuery(); LimparCampos(); respostaOk.Text = fn.respostaAmarela("Dados Inseridos com Sucesso!"); conn.Close(); } catch { mensagensErro.Text = "* Ocorreu um Erro em Inserir Usuários"; } } public void EditarUsuarios(object sender, System.EventArgs e){ string var_nome = fn.tratarCaracter(nome.Text); string var_empresa = fn.tratarCaracter(empresa.Text); string var_email = fn.tratarCaracter(email.Text); string var_telefone = fn.tratarCaracter(telefone.Text); string var_celular = fn.tratarCaracter(celular.Text); string var_login = fn.tratarCaracter(login.Text); string var_senha = fn.tratarCaracter(senha.Text); string var_nivel = nivel.Text; string var_status = status.Text; string sql_senha; try { if (var_senha == "") { sql_senha = ""; } else { sql_senha = ", senha = '"+var_senha+"'"; } sql = "UPDATE usuarios SET nome = '"+var_nome+"', empresa = '"+var_empresa+"', email = '"+var_email+"', telefone = '"+var_telefone+"', celular = '"+var_celular+"', login = '"+var_login+"', nivel = '"+var_nivel+"', status = '"+var_status+"' "+sql_senha+" WHERE codigo = '"+Convert.ToString(Request.QueryString["Id"])+"'"; OdbcConnection conn = new OdbcConnection(fn.parteConexao()); OdbcCommand comando = new OdbcCommand(sql, conn); conn.Open(); comando.ExecuteNonQuery(); respostaOk.Text = fn.respostaAmarela("Dados Editados com Sucesso "+var_nome+"!"); conn.Close(); } catch { mensagensErro.Text = "* Ocorreu um Erro ao Editar o Usuário"; } } } O inserir cadastra tranquilamente, só que o editar não cadastra, mais se eu trocar de: string var_nome = fn.tratarCaracter(nome.Text); para string var_nome = fn.tratarCaracter(Request.Form["nome"]); na função EDITAR, ele funciona, pq isso? Compartilhar este post Link para o post Compartilhar em outros sites
Oenning 0 Denunciar post Postado Abril 9, 2009 O textbox está dentro de algum outro componente? Coloque seu aspx aqui. Faça um debug e veja qual o conteúdo da variavel "nome", se o conteudo está correto. Compartilhar este post Link para o post Compartilhar em outros sites
Ted k' 126 Denunciar post Postado Abril 9, 2009 o textbox está dentro do <form runat="server"> segue o formulário: <%@ Page Language="C#" AutoEventWireup="True" CodeFile="class/Usuarios.aspx.cs" Inherits="Usuario" %> <%@ Assembly Src="../class/Funcoes.cs" %> <form runat="server"> <table width="437" border="0" align="center" cellpadding="0" cellspacing="1"> <tr> <td height="20" align="left" class="classFonte06"> </td> <td colspan="3" align="left"> <asp:RequiredFieldValidator ID="reqNome" Display="Dynamic" runat="server" /> <asp:RegularExpressionValidator ID="regemail" ValidationExpression="\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*" Display="Dynamic" runat="server" /> <asp:CompareValidator ID="compareSenha" Display="Dynamic" Type="String" Operator="Equal" runat="server"/> <asp:Label ID="mensagensErro" CssClass="classFonte09" runat="server" /> </td> </tr> <asp:Literal ID="respostaOk" runat="server" /> <tr> <td width="98" height="22" align="left" class="classFonte06">Nome:</td> <td colspan="3" align="left"><asp:TextBox ID="nome" Columns="53" MaxLength="40" CssClass="classCampos01" runat="server" /> <strong class="classFonte09">*</strong></td> </tr> <tr> <td height="22" align="left" class="classFonte06">Empresa:</td> <td colspan="3" align="left"><asp:TextBox ID="empresa" Columns="53" MaxLength="60" CssClass="classCampos01" runat="server" /></td> </tr> <tr> <td height="22" align="left" class="classFonte06">E-Mail:</td> <td colspan="3" align="left"><asp:TextBox ID="email" Columns="53" MaxLength="100" CssClass="classCampos01" runat="server" /><asp:RegularExpressionValidator ID="regemailAst" ValidationExpression="\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*" Display="Dynamic" runat="server" /></td> </tr> <tr> <td height="22" align="left" class="classFonte06">Telefone:</td> <td width="153" align="left"><asp:TextBox ID="telefone" Columns="15" MaxLength="20" CssClass="classCampos01" runat="server" /></td> <td width="37" align="left" class="classFonte06">Celular:</td> <td width="144" align="left"><asp:TextBox ID="celular" Columns="15" MaxLength="20" CssClass="classCampos01" runat="server" /></td> </tr> <tr> <td height="22" align="left" class="classFonte06">Login:</td> <td colspan="3" align="left"><asp:TextBox ID="login" Columns="25" MaxLength="8" CssClass="classCampos01" runat="server" /></td> </tr> <tr> <td height="22" align="left" class="classFonte06">Senha:</td> <td colspan="3" align="left"><asp:TextBox ID="senha" TextMode="Password" Columns="25" MaxLength="8" CssClass="classCampos01" runat="server" /></td> </tr> <tr> <td height="22" align="left" class="classFonte06">Confirme Senha:</td> <td colspan="3" align="left"><asp:TextBox ID="confirme_senha" TextMode="Password" Columns="25" MaxLength="8" CssClass="classCampos01" runat="server" /></td> </tr> <tr> <td height="22" align="left" class="classFonte06">Nível:</td> <td colspan="3" align="left"><asp:ListBox ID="nivel" Rows="1" CssClass="classCampos01" runat="server"></asp:ListBox></td> </tr> <tr> <td height="22" align="left" class="classFonte06">Status:</td> <td colspan="3" align="left" valign="bottom"><asp:ListBox ID="status" Rows="1" CssClass="classCampos01" runat="server"></asp:ListBox></td> </tr> <tr> <td height="40" align="left" class="classFonte06"> </td> <td colspan="3" align="left" valign="bottom"><% if (Convert.ToString(Request.QueryString["Id"]) == "" || Convert.ToString(Request.QueryString["Id"]) == null){ %><asp:ImageButton id="btImagem" ImageUrl="../images/BtSalvar.gif" OnClick="InserirUsuario" runat="server" /><% } else { %><asp:ImageButton id="btImagemEditar" ImageUrl="../images/BtSalvar.gif" OnClick="EditarUsuarios" runat="server" /><% } %> <asp:ImageButton id="btImagemLimpar" ImageUrl="../images/BtCancelar.gif" OnClick="BtCancelarUsuarios" runat="server" /></td> </tr> <tr> <td colspan="4" align="left" class="classFonte06"> </td> </tr> </table> </form> Compartilhar este post Link para o post Compartilhar em outros sites
quintelab 91 Denunciar post Postado Abril 9, 2009 Por acaso você alimenta o valor do seu TextBox no Page_Load? Se for veja se colocou a condição: if(!IsPostBack) Abraços... Compartilhar este post Link para o post Compartilhar em outros sites
Ted k' 126 Denunciar post Postado Abril 9, 2009 Rapa, era isso mesmo, que m*****, esqueci disso, ahuahuahaua! Valeu man, obrigado resolvido!! Compartilhar este post Link para o post Compartilhar em outros sites