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

خطاء في الكود

مغلق
بدأه flodi في 26 يناير 2008 · 2 رد · 467 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم

قمت باجراء هذا الكود وذلك من اجل معرفة نوع المستخدم Admin او User بعد التاكد من اسم المستخدم وكلمة المرور

Private Sub OK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OK.Click
		Dim str As String
		Dim SqlCommand2 As New SqlCommand
		str = "LoginSP1"
		With SqlCommand2
			.CommandType = CommandType.StoredProcedure
			.CommandText = str
			.Parameters.AddWithValue("@tech_user_name", UsernameTextBox.Text)
			.Parameters.AddWithValue("@tech_password", PasswordTextBox.Text)
			.Connection = SqlConnection1
		End With
		SqlConnection1.Open()
		Dim valid As Integer = SqlCommand2.ExecuteScalar
		If valid < 1 Then
			'invalid login
			MsgBox("كلمة المرور او اسم المستخدم خطاء", MsgBoxStyle.OkOnly)
			UsernameTextBox.Text = ""
			PasswordTextBox.Text = ""
			UsernameTextBox.Focus()
			SqlConnection1.Close()
			SqlCommand2.Parameters.Clear()
		Else
			'valid login
			OK.Enabled = False
			Cancel.Enabled = False
			UsernameLabel.Enabled = False
			PasswordLabel.Enabled = False
			MenuStrip1.Enabled = True
			PasswordTextBox.Enabled = False
			username = UsernameTextBox.Text
			Label1.Text = username
			SqlCommand2.Parameters.Clear()
			SqlCommand1.Parameters("tech_user_name").Value = UsernameTextBox.Text
			Dim read As SqlClient.SqlDataReader
			read = SqlCommand1.ExecuteReader
			If read.Read Then
				TextBox1.Text = read.Item("user_type")
				read.Close()
				SqlConnection1.Close()
				SqlCommand1.Parameters.Clear()
			End If
		End If
	End Sub

مع العلم بان الاجراء المستدعى هو التالي

ALTER PROCEDURE dbo.LoginSP1 
	@tech_user_name nvarchar (50) ,
	@tech_password nvarchar (50)
		AS	select count(tech_user_name) from client
	where tech_user_name=@tech_user_name and tech_password=@tech_password 
		RETURN

ارجو المساعدة من اصحاب الخبره وشكراً

عند تنفيذ البرنامج يحدث الخطاء التالي

An SqlParameter with ParameterName 'tech_user_name' is not contained by this SqlParameterCollection.
#2

الخطأ هنا اخي الحبيب

SqlCommand1.Parameters("tech_user_name").Value = UsernameTextBox.Text

اضف العلامة @ قبل الاسم حتى يعمل

SqlCommand1.Parameters("@tech_user_name").Value = UsernameTextBox.Text

وشكرا

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

لوكنت وغلاً في الرجال لضرني**** حسن جرائتي ومقتدي

منتديات طريق الهداية

#3

شكراً جزيلاً اخي ابو عزام بالفعل اشتغل معايا 100%

لله درك وجزاك الله خير ورحم والديك ووالدينا وجميع المسلمين

وربنا يوفقك

هذا الموضوع مغلق.

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