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

طلب كيفية ربط textbox ب SQL database

بدأه owaisland في 22 مايو 2010 · 3 رد · 1,693 مشاهدة · في ASP.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

أنا أقوم حاليا بعمل برمجة لمشروع عن الترجمة الآلية باستخدام ASP.NET مع C# وقاعدة البيانات باستخدام SQL

وعملت انه المستخدم يدخل الكلمة باللغة الانجليزية في textbox1 ويضغط على Button1 ليظهر معناها باللغة العربية في textbox2

أرجو مساعدتي في كتابة الكود الخاص بمطابقة الكلمة المدخلة في textbox1 مع جدول noun وبالأخص عمود n_name والتأكد من وجودها في الجدول

والإتيان بمايطابقها من جدول n_meaning وبالأخص عمود meaning وعرضه في textbox2 وذلك عند الضغط على Button1 واذا لم يجد الكلمة المدخلة في قاعدة البيانات يعرض رسالة خطأ

مع الشكر

#2

سلام عليكم اخى العزيز

ان شاء الله اصل معك الى حل ولكن لى هناك بعض التعديلات التى قمت بها انا فى الكود وتصميم المشروع

وهى انى ساستخدم جدول واحد فقط يتكون من id --- arabic----english

وهو ان يوضع فى عمود العربى الكلمه العربى وعمود الانجليزى معناها بالانجليزى وعمتا ان فهمت انت المثال من الممكن تطبيقه على تصميمك انت بدون مشكله ولكن اى ان هذا التصميم اسهل ويؤدى نفس الغرض من ان نعمل جدولين

اولا فى صفحتنا سنضيف textbox و Label و Button

وملحوظه لك يا اخى انت اردت ان تستعرض الترجمه فى تكست بوكس ولكن الافضل ان تعرضها فى Label وعمتا الطريقه لن تختلف اطلاقا ان اردت ان تعرضها فى textbox

الان ناتى للتفكير ومن بعده الكود

ببساطه نحن نريد عندما يتم الضغط على البوتون ان ياتى لنا بترجمه الكلمه المكتوبه

الان نأتى للكود

اول حاجه هانعملها اننا هانخلى ال Label مخفى علشان مايظهرش اول مالصفحه تشتغل يعنى هانخلى ال Visible بتاعته False وده من البروبريتز

نيجى بقه للكود

اول حاجه ناخد الكلام اللى مكتوب فى التكست بوكس على استرينج

string Arabic = TextBox1.Text;

بقيه الكود


SqlCommand cmd = new SqlCommand("select english from test where arabic = '" + Arabic+"'",conn);
conn.Open();
SqlDataReader dr = cmd.ExecuteReader();

if (dr.Read())
{

Label1.Visible = true;
Label1.ForeColor = Color.Black;
Label1.Text = dr["english"].ToString();
}
else
{
Label1.Visible = true;
Label1.ForeColor = Color.Red;
Label1.Text = "لايوجد معنى فى القاموس لهذه الكلمه ";

}
conn.Close();
  SqlConnection conn = new SqlConnection("Data Source=FANTAZIA-PC;Initial Catalog=Test;Integrated Security=True");

نيجى بقه لشرح الكود

اول حاجه بعرف الكونيكشون بتاع الداتا بيز عادى

تانى حاجه بعرف الكوماند وبقوله

اختار الكولمن اللى اسمه انجليش لما الكولمن اللى اسمه عربى = السترينج اللى اسمه عربى اللى هو بيساوى اللى مكتوب فى التكست بوكس

بعد كده باخد الكلام اللى هايرجع من جمله السليكت فى اوبجكت اسمه dr من نوع sqldatareader

وبقوله لو قدرت تقرا ( يعنى ايه لو قدرت تقرا يعنى ببساطه لو الاوبجكت اللى اسمه dr فيه بيانات يعنى )

انت فاكر طبعا اننا كنا خافين ال label هاقوله اول حاجه اظهره تانى حاجه خلى لونه اسود تالت حاجه اعرض فيه الحاجه اللى راجعه فى dr

غير كده بقه هايعمل ايه

هايظهر الlabel برده بس هايخلى لونه المره دى احمر على اساس انه تحذير يعنى وهاخلى التكست بتاعه لا توجد هذه الكلمه

أظن الكود بسيط ومافيش اسهل من كده

الكود كله على بعضه


{



string Arabic = TextBox1.Text;
SqlConnection conn = new SqlConnection("Data Source=FANTAZIA-PC;Initial Catalog=Test;Integrated Security=True");
SqlCommand cmd = new SqlCommand("select english from test where arabic = '" + Arabic+"'",conn);
conn.Open();
SqlDataReader dr = cmd.ExecuteReader();

if (dr.Read())
{

Label1.Visible = true;
Label1.ForeColor = Color.Black;
Label1.Text = dr["english"].ToString();
}
else
{
Label1.Visible = true;
Label1.ForeColor = Color.Red;
Label1.Text = "لايوجد معنى فى القاموس لهذه الكلمه ";

}
conn.Close();
}
  protected void Button1_Click(object sender, EventArgs e)

ولو فيه اى حاجه وقفت معاك انا موجود

ويارب اكون قدرت افيدك

top-logo.jpg
#3

الله يعطيك العافية وجزاك الله خير ..

انا سويت كل الخطوات اللي شرحتها وفاهمها , بس عندي مشكلة لما اضغط على الـ Button بيفشل الاتصال بقاعدة البيانات .. وهذا نص الرسالة :

" حدث خطأ متعلق بالشبكة أو محدد لمثيل محدد أثناء تأسيس اتصال بملقم SQL Server. لم يتم العثور على الملقم أو أنه لم يكن قابلاً للوصول إليه. تحقق من صحة اسم المثيل ومن تهيئة ملقم SQL Server بحيث يتيح الاتصالات البعيدة. (provider: موفر أنابيب الاتصال المسماة, error: 40 - تعذر فتح الاتصال بـ SQL Server) "

وبيظللي هذا السطر باللون الأحمر :

السطر 31: conn.Open();

ومتأكد انه اسم قاعدة البيانات والserver والجداول صحيح ,,

انت لحد الآن ساعدتني كثير ماشاء الله ولو قدرت تحللي هذه المشكلة أكون شاكرلك

مع الشكر

#4

صديقي تاكد من سلسلة الاتصال لربما تركتها

Data Source=FANTAZIA-PC

In bad state

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