Ciao a tutti.
Mi sembra una cretinata, ma sto uscendo pazzo.
Ho una DropDownList popolata da db.
codice:
Public Sub ddlStato_Load() stringacn.StringaConnessione()
Dim cntxt As String = stringacn.getcn
Dim cn As New MySqlConnection(cntxt)
Dim cm As New MySqlCommand("SELECT * FROM stati", cn)
Try
cm.Connection.Open()
Dim ddlValues As MySqlDataReader
ddlValues = cm.ExecuteReader()
ddlStato.DataSource = ddlValues
ddlStato.DataValueField = "nome"
ddlStato.DataTextField = "nome"
ddlStato.DataBind()
Catch ex As Exception
Finally
If
cn.State = Data.ConnectionState.Open
Then
cm.Connection.Close()
cm.Connection.Dispose()
End If
End Try
End Sub
Fin qui tutto ok. l'elenco si vede.
Ora voglio che, alla selezione di un item della DropDL e al successivo click su un button, questo venga memorizzato su db.
Ho fatto così, ma non funziona:
codice:
Protected Sub bttSalva_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles bttsegnala.Click stringacn.StringaConnessione()
Dim cntxt As String = stringacn.getcn
Dim cn As New MySqlConnection(cntxt)
Dim cm As New MySqlCommand("UPDATE tabella1 SET stato=?stato WHERE ( ids = ?ids )", cn)
Dim mydata As New DataTable Try
cn.Open()
cm.Parameters.AddWithValue("?stato", ddlStato.SelectedItem.Value ) cm.Parameters.AddWithValue("?ids", lblIDS.Text)
Dim myAdapter As New MySql.Data.MySqlClient.MySqlDataAdapter
myAdapter.SelectCommand = cm
myAdapter.Fill(mydata)
Catch ex As Exception
MsgBox("Modifica non avvenuta")
Finally
If cn.State = Data.ConnectionState.Open
Then
cn.Close()
End If
End Try
End Sub
ho provato a farmi stampare il ddlStato.SelectedItem.Value/Text ma mi restituisce sempre il primo valore delle lista.
come si fa?
Grazie