Problema com Textbox
Bom dia,
Sou iniciante em Asp.net, e estou fazendo um site em ASP.net com C#.
Posso estar fazendo besteira, mas não vai de jeito nenhum...
Tenho uma página com 3 textbox e um botão,
Quando a página carrega, os textbox são preenchidos com o banco de dados (MSSQL), até ai perfeito,
o problema é que se eu alterar o conteudo dos textbox (essa é a intenção) e clicar no botão (atualizar)
o evento não está pegando no novo valor digitado no textbox e sim o que foi preenchido inicialmente com os dados do banco de dados.
Podem achar estranho que usei 2 métodos para ler e atualizar o banco de dados, mas o problema não é esse,
o problema é justamente quando tento pegar o texto alterado dos textbox para atualizar... não aparece nenhum erro na tela, apenas ele está pegando o valor antigo =[
Abaixo segue código do .aspx
E agora o código do .cs
Obrigado e fico no aguardo
Sou iniciante em Asp.net, e estou fazendo um site em ASP.net com C#.
Posso estar fazendo besteira, mas não vai de jeito nenhum...
Tenho uma página com 3 textbox e um botão,
Quando a página carrega, os textbox são preenchidos com o banco de dados (MSSQL), até ai perfeito,
o problema é que se eu alterar o conteudo dos textbox (essa é a intenção) e clicar no botão (atualizar)
o evento não está pegando no novo valor digitado no textbox e sim o que foi preenchido inicialmente com os dados do banco de dados.
Podem achar estranho que usei 2 métodos para ler e atualizar o banco de dados, mas o problema não é esse,
o problema é justamente quando tento pegar o texto alterado dos textbox para atualizar... não aparece nenhum erro na tela, apenas ele está pegando o valor antigo =[
Abaixo segue código do .aspx
<%@ Page Title="Administração - Administrar Conteúdo" Language="C#" MasterPageFile="~/adm/MasterPageAdmin.master" AutoEventWireup="true" CodeFile="alt_depoimentos.aspx.cs" Inherits="adm_alt_depoimentos" %> <asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server"> </asp:Content> <asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server"> Texto:<br /><asp:TextBox ID="txttexto" MaxLength="300" Rows="5" TextMode="MultiLine" Width="300px" runat="server" ></asp:TextBox> <br /> Autor:<br /><asp:TextBox ID="txtautor" MaxLength="60" Width="300px" runat="server"></asp:TextBox> <br /> Email:<br /><asp:TextBox ID="txtemail" MaxLength="50" Width="300px" runat="server"></asp:TextBox> <br /> <asp:Button ID="bt_txt_atualizar" Text="Atualizar Campos" runat="server" onclick="bt_txt_atualizar_Click" /> <br /><br /> </asp:Content>
E agora o código do .cs
using System; using System.Collections.Generic; using System.Data; using System.Data.OleDb; using System.Web.UI; using System.Web.UI.WebControls; using System.Xml; using System.Data.SqlClient; using System.Text; using System.Threading; public partial class adm_alt_depoimentos : System.Web.UI.Page { public int vid; public string texto, autor, email; public void Page_Load(object sender, EventArgs e) { if (!Base.Logado()) Response.Redirect("AcessoRestrito.aspx"); string vparam = Request.QueryString["i"]; vid = int.Parse(vparam); ////////////////////////// // Define database connection OleDbConnection conn = new OleDbConnection("Provider=SQLOLEDB;Data Source=.\\SQLEXPRESS;Initial Catalog=portal;Integrated Security=SSPI;"); OleDbCommand comm = new OleDbCommand("SELECT * FROM POI2_depoimentos WHERE id=" + vid, conn); // Open connection conn.Open(); // Execute the command OleDbDataReader reader = comm.ExecuteReader(); while (reader.Read() == true) { texto = reader["texto"].ToString(); autor = reader["autor"].ToString(); email = reader["email"].ToString(); } // Close the reader reader.Close(); conn.Close(); txttexto.Text = texto; txtautor.Text = autor; txtemail.Text = email; } public void bt_txt_atualizar_Click(object sender, EventArgs e) { { if ((txttexto.Text.Length <= 300) && (txttexto.Text != "") && (txtautor.Text != "")) { string var_texto = txttexto.Text.Replace(System.Environment.NewLine, "<br />"); if (var_texto.Length <= 300) { SqlConnection conn = new SqlConnection(@"Data Source=.\SQLEXPRESS;Initial Catalog=portal;Trusted_Connection=True;"); SqlCommand comm = new SqlCommand("UPDATE POI2_depoimentos SET texto='" + var_texto + "', autor='" + txtautor.Text + "', email='" + txtemail.Text + "' WHERE id=" + vid, conn); // conn.Open(); comm.ExecuteScalar(); // conn.Close(); Response.Redirect("alt_depoimentos.aspx?i=" + vid); } else { //mostrar erro } } else { //mostrar erro } } } }
Obrigado e fico no aguardo
Daniel
Curtidas 0
Respostas
Daniel
07/05/2010
Já resolvi pessoas,
ficou faltando eu colocar no load da página:
Valeu
ficou faltando eu colocar no load da página:
if (!Page.IsPostBack) { .... }
Valeu
GOSTEI 0
Nathan Aguiar
07/05/2010
Valew.
Também estava com o mesmo problema hehe
Também estava com o mesmo problema hehe
GOSTEI 0