الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

Update لا تعمل

بدأه roses في 8 مايو 2008 · 3 رد · 879 مشاهدة · في ASP.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم و رحمة الله

أقوم بعمل function update meta data

(مرفق الكود )

  Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
		Dim user As MembershipUser = Membership.GetUser()
		Dim myConnection As SqlConnection
		Dim myTransaction As SqlTransaction = Nothing
		Dim reader As SqlDataReader

		'  Dim loid As Integer = Request.QueryString("LOID")
		Dim cmd As String = "SELECT * FROM MetaData WHERE Identifier =3"
		Try

			myConnection = New SqlConnection(ConfigurationManager.ConnectionStrings("DBConnectionString1").ToString())

			myConnection.Open()
			myTransaction = myConnection.BeginTransaction()



			Dim myCommand As SqlCommand = New SqlCommand(cmd, myConnection, myTransaction)



			reader = myCommand.ExecuteReader()

			reader.Read()
			TitleBox.Text = reader.GetString(1)
			CreatorBox.Text = reader.GetString(2)
			LanguageList.Text = reader.GetString(3)
			FormatList.Text = reader.GetString(4)
			ContributorBox.Text = reader.GetString(6)
			DescriptionBox.Text = reader.GetString(7)
			CoverageBox.Text = reader.GetString(8)
			PublisherBox.Text = reader.GetString(9)
			RelationBox.Text = reader.GetString(10)
			RightsBox.Text = reader.GetString(11)
			SourceBox.Text = reader.GetString(12)
			SubjectBox.Text = reader.GetString(13)
			TypesList.Text = reader.GetString(14)
			reader.Close()


			myCommand.ExecuteNonQuery()



			reader.Close()


			myTransaction.Commit()
		Finally
			myConnection.Dispose()

		End Try

	End Sub

	Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
		Dim user As MembershipUser = Membership.GetUser()

		Dim myConnection As SqlConnection
		Dim myTransaction As SqlTransaction = Nothing
		Dim reader As SqlDataReader
		myConnection = New SqlConnection(ConfigurationManager.ConnectionStrings("DBConnectionString1").ToString())
		Dim myCommand As SqlCommand = New SqlCommand
		myConnection.Open()
		myCommand.Connection = myConnection
		myCommand.CommandText = "update MetaData set Title=""&TitleBox.Text&"" where Identifier=3"

		With myCommand.Parameters.Clear()
		With myCommand.Parameters
		.Clear()
		With myCommand.Parameters
		  .Clear()
		   .AddWithValue("Title", "edit")
		End With
		End With



		myCommand.ExecuteNonQuery()
		myConnection.Close()
		myCommand.Dispose()
		myCommand = Nothing




	End Sub

المشكلة لدي انه حين اضغط تعديل لا يتحرك الزر و لا يحصل شي !

و كما تلاحظون الشرط الحالي where identifier = 3

لانه لديuser id

و هومعرف ك unique identifier

و مازلت ابحث عن طريقة لاسترجاعة , لكن ما يهمني الان هو ان يعمل الابديت يشكل جيد

رجااااء لا تبخلوا علي بالمساعدة فقد قضيت اياما على هذه الفنكشن و لم اوفق حتى الان

#2

أختى بعد التحية أما بعد,

اقتباس
المشكلة لدي انه حين اضغط تعديل لا يتحرك الزر و لا يحصل شي !

أنا لا أعلمم ما معنى أن الزر لا يتحرك

ولكن إن كنتى تقصدى إنه لا يعمل Update

فقط جربى أن تقومى بوضع الاكواد التى بداخل Page_Load داخل

IF Not Page.IsPostBack Then

End IF

فربما يحدث هذا ان زر التعديل يقوم بعمل PostBack وعندما يحمل الصفحة مرة أخرى تعود وكأن شىء لم يكن أى يحذف التعديلات

#3

السلام عليكم أخي

اقتباس
أنا لا أعلم ما معنى أن الزر لا يتحرك

ربما أخطأت في الوصف لكن ما أقصده ان الحدث لا يحصل بضغطة الزر , حتى انني مسحت كل ما في الفنكشن و طلبت فقط أن يطبع مسج حين الطباعة

على الرغم من هذا الرسالة لا تطبع ! :S

و قد قمت بعمل ما أخبرتني به و و ضعت الشرط في ال page loadو لكن لم يتغير شيء لا أعرف لماذا ؟

بالمناسبة ,

اقتباس
لانه لديuser id

و هومعرف ك unique identifier

و مازلت ابحث عن طريقة لاسترجاعة

و قد توصلت اليها بفضل الله

هذا هو الكود

 Dim UserId As String
		Dim user As MembershipUser
		user = Membership.GetUser()
		UserId = user.ProviderUserKey.ToString()
#4

السلام عليكم

لجعل الزر يعمل اعملي Double click على الزر ليفتح الحدث الخاص بهذا الزر

او من خصائص الزر في حدث الزر Onclick ضعي

onclick="button1_click"

وبالنسبة لاسم المستخدم لا يجب ان يكون من النوع String وانما من نوع GUID والا سيظهر خطأ عند محاولة تخزينه في قاعدة البيانات لذا يجب ان تستخدمي مايلي

اقتباس
Dim currentUser As MembershipUser = Membership.GetUser()

Dim currentUserId As Guid = CType(currentUser.ProviderUserKey, Guid)

cmd.Parameters.AddWithValue("@user_id", currentUserId)

واذا اردت تعريف نوع باراميتر له يجب استخدم النوع Object

<asp:Parameter Name="user_id" Type="Object" />

مواضيع مشابهة