ユーザーが送信した後、ページにロードされた値をデータベースに配置しようとすると、奇妙な結果になります。
ページが読み込まれると、次のようになります。
Public theProductName As String = ""
Dim theProductCategory As String = ""
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Not IsPostBack Then
LoadProductName()
End If
End Sub
Private Sub LoadProductName()
objConn = New MySqlConnection(product.strConnString)
objConn.Open()
strSQL = "SELECT id, name, category " & _
"FROM product " & _
"WHERE id = 4;"
Try
objCmd = New MySqlCommand(strSQL, objConn)
dtReader = objCmd.ExecuteReader()
While dtReader.Read()
theProductName = dtReader("name")
theProductCategory = dtReader("category")
btnSubmit.Text = "Add Item to " & theProductName
End While
dtReader.Close()
dtReader = Nothing
objConn.Close()
objConn = Nothing
Catch ex As Exception
MsgBox("LoadProductName: " & ex.Message)
End Try
End Sub
ページの起動時にこれらの値を確認すると、正しい値があり、送信ボタンにも製品名があります。
しかし、ボタンを押して保存すると、何もないのと同じ変数がありますか?
Private Sub btnSubmit_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnSubmit.Click
Dim productName As String = theProductName.Replace(" ", "-")
Dim imageName As String = productName & "\" & Trim(txtModel.Text) & ".jpg'"
Dim theCat as String = theProductCategory
End Sub
ここでのproductNameは、 theCatのように何もありません。
何を見落とすことができますか?