Foros del Web » Programación para mayores de 30 ;) » .NET »

No m actualiza los campos de texto

Estas en el tema de No m actualiza los campos de texto en el foro de .NET en Foros del Web. Hola, a ver si m podeis ayudar. Tengo un formulario con una serie de campos de texto que cogen el valor de una tabla de ...
  #1 (permalink)  
Antiguo 22/04/2005, 05:12
 
Fecha de Ingreso: abril-2005
Mensajes: 163
Antigüedad: 19 años
Puntos: 0
No m actualiza los campos de texto

Hola, a ver si m podeis ayudar.
Tengo un formulario con una serie de campos de texto que cogen el valor de una tabla de la base de datos.
Kiero dar opción a q el usuario los pueda cambiar. Pues bien, si los cambia y doy a un botón de modificar
para que se actualicen en la base de datos no hay forma, quedan con el valor que tenían, qué puede ser?


Private Sub modificar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles modificar.Click
Dim dbconn As SqlConnection
Dim dbupdate As New SqlCommand
dbconn = New SqlConnection("server=127.0.0.1;database=bd;uid=sa ;pwd=")
dbupdate.CommandText = "UPDATE clientes SET nombre='" & txtnombre.Text & "', apellidos='" & txtapellidos.Text & "', telefono1='" & txttelefono.Text & "', telefono2='" & txttelefono.Text & "', email='" & txtemail.Text & "', observaciones='" & txtobservaciones.Text & "' where idcliente=" & Request.Cookies("cliente").Value
dbupdate.Connection = dbconn
dbupdate.Connection.Open()
dbupdate.ExecuteNonQuery()
dbupdate.Connection.Close()

End Sub

Probé a poner tb los campos de texto autopostback pero siguen sin modificarse.

Gracias.
  #2 (permalink)  
Antiguo 22/04/2005, 05:21
Avatar de neivan  
Fecha de Ingreso: febrero-2005
Mensajes: 539
Antigüedad: 19 años, 3 meses
Puntos: 1
Vamos a ver.
Priemro los textbox a autopostback no los pongas.eso es solo si tiene un codigo asociado a algun evento de ese textbox,y kieres que q se recrage la pagina para ver sus efectos...

Si no te sale ningun error ala hace rla update y no te hace la update algo rarro pasa

Cuando t epasan estas cosas es bueno chekear tu codigo
Pon por ejemplo un label invusilbe y despues del exectue nonquiery q t elo ponga a visible,asi sabes si ha llegao hasta ahi,es decir si es problema de q est amal el codigo del boton o q ni si kiera entra al boton,comprueba esto y nos comentas,por q la update parece correcta.
  #3 (permalink)  
Antiguo 22/04/2005, 05:34
 
Fecha de Ingreso: abril-2005
Mensajes: 163
Antigüedad: 19 años
Puntos: 0
Hola, no sé es muy raro. Puse puntos d ruptura y m entra al botón y tb por todas las instrucciones.
Puse la etiketa después del executenonquery y tb me la pone con el texto.
Y el caso es q no m da ningún error, pero actualizar no actualiza.
  #4 (permalink)  
Antiguo 22/04/2005, 06:59
 
Fecha de Ingreso: marzo-2004
Ubicación: Valencia
Mensajes: 367
Antigüedad: 20 años, 1 mes
Puntos: 1
Estás rellenando los campos de texto en el evento Page_Load? Si es así prueba esto:

Código:
Private Sub Page_Load(...)...
...
  If Not Page.IsPostBack() Then
     ' Pon aquí tus sentencias para rellenar los campos de texto
  End If
...
End Sub

Saludos
  #5 (permalink)  
Antiguo 22/04/2005, 07:30
 
Fecha de Ingreso: abril-2005
Mensajes: 163
Antigüedad: 19 años
Puntos: 0
mil gracias!! qué superforo :).
Por cierto me puedes expl,icar un poco qué significa esa línea q no lo tengo muy claro?.

Un saludo.
  #6 (permalink)  
Antiguo 22/04/2005, 07:34
Avatar de neivan  
Fecha de Ingreso: febrero-2005
Mensajes: 539
Antigüedad: 19 años, 3 meses
Puntos: 1
Pues mu sencillo.

Lo que hay dentro solo se ejecuta la primera vez q se carga la pagina

Lo que esta fuera d eese if cada vez q das a un boton ,cada vez q se recarg ala pagina,lo que hace es ejecutar primero lo que hay en e lpage load y luego el metodo que tenga enlazado el boton...

Entonces tu problema era q te volvia a asignar los datos de inciales a tus textbox sin q tu lo vieras antes d ehacer la update.

Lo que esta dentro del if not ispostback solo se ejecuta la primera vez q se carg auna pagina.En los postback(recargas,con botones o controles con autopostback=true) no.
  #7 (permalink)  
Antiguo 22/04/2005, 07:52
 
Fecha de Ingreso: abril-2005
Mensajes: 163
Antigüedad: 19 años
Puntos: 0
Buenísima explicación, muchas gracias :)
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:21.