29-12-18, 02:03 AM
(29-12-18, 01:42 AM)Mohamed Magdy كتب :(28-12-18, 08:47 PM)عبد العزيز البسكري كتب :السّلام عليكم و رحمة الله و بركاتهجرّب أخي الكريم حذف الرّقم 1 من أمام عبارة WHEREو كذلك قم باستبدال كلمة USER = @USERبكلمة USERNAME = @USERNAMEتحياتي
نفس المشكلة اخى
(29-12-18, 12:57 AM)a.wagdi كتب :(28-12-18, 04:48 PM)Mohamed Magdy كتب : شكرا جدا صديقى تم الحل لاكن توجد مشكلة فى كود الاتصال هاذا ما هيا المشكلة
دا كود الاتصال الى اعمل بية
كود :
Imports MySql.Data.MySqlClient
Imports System.Runtime.InteropServices
Public Class Form1
Dim conn As New MySqlConnection
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim str As String = "server =لينك قاعدة البينات;Username=يوزر القاعدة;password=بسورد القاعدة ;database=اسم القاعدة;charset=utf8"
Dim command As New MySqlCommand("select * from login where1 user = @user and Password = @password")
conn = New MySqlConnection
command.Parameters.Add("@username", MySqlDbType.VarChar).Value = TextBoxUsername.Text
command.Parameters.Add("@password", MySqlDbType.VarChar).Value = TextBoxPassword.Text
Dim adapter As New MySqlDataAdapter(command)
Dim table As New DataTable()
adapter.Fill(table)
If table.Rows.Count() <= 0 Then
MessageBox.Show("Username Or Password Are Invalid")
Else
MessageBox.Show("Login Successfully")
End If
End Sub
End Class
السلام عليكم
أنت جهزت النص الخاص بالاتصال ولكنك لم تضع في MySqlConnection
لكن الأفضل أن تضع متغير الإتصال في Module من نوع Public وتناديه من أي مكان في المشروعPHP كود :
conn = New MySqlConnection(str)
لأن بطرقيتك هذه فأنت تنشي إتصال جديد في كل مرة تتعامل مع قاعدة البيانات
ويتسبب لك في مشكلة عد التمكن من الإتصال بعد إجراء عدة عمليات
PHP كود :
Module Module1
Dim str As String = "server =لينك قاعدة البينات;Username=يوزر القاعدة;password=بسورد القاعدة ;database=اسم القاعدة;charset=utf8"
Public conn As New MySqlConnection(str)
End Module
فيصبح مناداة الإتصال بالكود بهذه الطريقة
PHP كود :
Public Class Form1
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim command As New MySqlCommand("select * from login where1 user = @user and Password = @password")
command.Connection = conn
command.Parameters.Add("@username", MySqlDbType.VarChar).Value = TextBoxUsername.Text
command.Parameters.Add("@password", MySqlDbType.VarChar).Value = TextBoxPassword.Text
Dim adapter As New MySqlDataAdapter(command)
Dim table As New DataTable()
adapter.Fill(table)
If table.Rows.Count() <= 0 Then
MessageBox.Show("Username Or Password Are Invalid")
Else
MessageBox.Show("Login Successfully")
End If
End Sub
End Class
ممكن مرفق اخى معلش لى هاذا الشرح لانى حاولت وما عرفت
لا يحتاج الأمر لمرفق، لأن أسس التعامل مع قاعدة البيانات هي نفسها
اضافة لما اشار اليه أخي عبدالعزيز البسكري من خطا وجود رقم 1 مع كلمة where ايضا كلمة user تعتبر من الكلمات المحجوزةK
فلتلافي مشكلة الكلمات المحجوزة اجعل اسم الجدول واسماء الحقول بين علامة ` ` لاحظ متختلفة عن ' '
الرمز ` ` يستعمله MySql بدلا من [ ] التي يستعملها Access و SqlServer
وتجد هذا الرمز عادة مع زرار حرف (ذ)
PHP كود :
select * from `login` where `user` = @user and `Password` = @password
