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

مشكلة في كود حلقة فور ايش

بدأه ورق خسرانه في 12 نوفمبر 2012 · 7 رد · 467 مشاهدة · في ASP.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

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

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

سوق اقوم بشرح الكود

لدي جدول مكون من

id_question رقم السؤال

quesion السؤال

answer_q_1 الاجابة الاول

answer_q_2 الاجابة الثانية

answer_q_3 الاجابة الثالثة

answer_q_4 الاجابة الرابعه

ولدي جدول اخر فيه

id_question رقم السؤال

answer اجابة السؤال

-----------------------

واقوم بعرض الاسئلة في datalist والاجابات داخل RadioButton طبعاُ قمت باضافات اربعه RadioButton على عدد الاجابات وهي مضافة في datalist

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

يتم اضافة +1 الى المتغير الذي سوق يحسب لي عدد الاجابات

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

وهذه هو الكود

والذي اريدة انه اذا تم الاجابة عن السؤال وكانت صحيحة يتم حساب اضافة +1 الى المتغير الذي اسمة session("sum")

وفي نهاية الفور ايش يطلع لي كم عدد الصح فاذا قام الطالب بالاجابة على اربعه اسئلة صحيحة يكون الناتج 4

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

  Dim sum As Integer = 0
        sum = Session("sum_dg")
        For Each row As DataListItem In DataList1.Items
            Dim lab_id_Q As String = CType(row.FindControl("Labelid_Q"), Label).Text
            Dim rd1 As RadioButton = CType(row.FindControl("Rad1"), RadioButton)
            Dim rd2 As RadioButton = CType(row.FindControl("Rad2"), RadioButton)
            Dim rd3 As RadioButton = CType(row.FindControl("Rad3"), RadioButton)
            Dim rd4 As RadioButton = CType(row.FindControl("Rad4"), RadioButton)
            If rd1.Checked = False And rd1.Checked = False And rd3.Checked = False And rd4.Checked = False Then
                ' Literal1.Text = "عزيز الطالب يوجد بعض الاسئلة لم تجب عليها يرجى مراجعة الاسئلة والتاكد"
                Exit Sub
            End If
            If rd1.Checked = True Then

                Dim dt As New DataTable
                dt = ob.GetAnswer(lab_id_Q)
                If rd1.Text = dt.Rows(0)(1) Then
                    Session("sum_dg") += 1

                End If
            End If
            If rd2.Checked = True Then

                Dim dt1 As New DataTable
                dt1 = ob.GetAnswer(lab_id_Q)
                If rd2.Text = dt1.Rows(0)(1) Then
                    Session("sum_dg") += 1

                End If
            End If
            If rd3.Checked = True Then

                Dim dt2 As New DataTable
                dt2 = ob.GetAnswer(lab_id_Q)
                If rd3.Text = dt2.Rows(0)(1) Then

                    Session("sum_dg") += 1

                End If
            End If
            If rd4.Checked = True Then

                Dim dt3 As New DataTable
                dt3 = ob.GetAnswer(lab_id_Q)
                If rd4.Text = dt3.Rows(0)(1) Then
                    Session("sum_dg") += 1
                End If
            End If
        Next
        MsgBox(Session("sum_dg"))

مع العلم حاولت اعملها عن طريق اف واف الس ولكن نفس المشكلة وحولتها افات ونفس المشكلة

تم تعديل هذه المشاركة بواسطة ورق خسرانه في 12 نوفمبر 2012 في 23:07

#2

ممكن ترفق المشروع وقاعدة البيانات

#3

الرابط الخاص بي

تفضل اخي هذه المشروع وقاعدت البيانات نفس المشروع

رفعته على رابط

#4

If rd1.Checked = False And rd1.Checked = False And rd3.Checked = False And rd4.Checked = False Then

update to

If rd1.Checked = False And rd2.Checked = False And rd3.Checked = False And rd4.Checked = False Then

'rd2.Checked

1
#5

اخي لم افهم ماهو المقصود من كتابتك الكود هذه مرتين

If rd1.Checked = False And rd1.Checked = False And rd3.Checked = False And rd4.Checked = False Then

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

وماهو المقصود بهذه الجملة ؟

update to

#6

هذا هو الخطء

rd1.Checked = False And rd1.Checked = False

تكرار الشرط

rd1.Checked = False And rd2.Checked = False

تم تعديل هذه المشاركة بواسطة KARIMSOFT في 14 نوفمبر 2012 في 11:20

#7

مششكور اخي العزيز تم حل المشكلة

#8

لا شكر علي واجب

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