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

عدد محاولات الدخول

بدأه Aminit في 26 أكتوبر 2010 · 6 رد · 681 مشاهدة · في ASP.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

لدي الكود في C# يعمل في صفحة تسجيل , طبعا في عدد محاولات للمستخدم بانه يدخل الباسورد ولنفرض 3 طيب ايش المشكله في الكود التالي

وشكرااا

public int i = 3;
void button() {

 i -= 1;
        int f = i;
        string x = f.ToString();
        noofattempts.Text = x;


        if (x == "0")
            lblNoOfattempts.Text = "sorry";

 }

f-=1;
}
#2

هناك خطأ ,

الـ f-=1;

غير معرفة في هذا السكوب

فهي معرفة داخل الخاصية Button

يجب ان تعرفها في الخارج

بالاضافة إلى اني ارى انك كتبت الكثير من الأوامر

رغم ان الموضوع ابسط من ذلك

الأمر الآخر , هذا الكود على الويب أو على جهاز مكتبي

لو على الويب فلن يعمل

لان كل مرة الصفحة تفتح فيها ستعاد القيم إلى سابقها و لذلك يجب تخزين القيمة في واحد من الستيتس التابعة للASP.NET

ارحب بكم في مدونتي الشخصية

M2000 Developer

#3

هذا الكود هو على الويب ,, طيب تقدر تعطيني الحل

#4

قم بإستخدام session أو viewstate

#5

التحميل على المنتدى لا يعمل أكتب لي إيميلك لأرسله لك

الله أكبر الله أكبر الله أكبر لآ إله إلا الله الله أكبر الله أكبر ولله الحمد

#6

الفكرة هنا هو استخدام ViewState

سوف نقوم بحفظ عدد مرات الدخول .... لكن كيف؟؟

سوف نقوم بإنشاء Property ونتعامل معها مباشرة داخل الكود.

في داخل هذه ال Property سننشئ Viewstate ولنسميها ViewState["NoOfLogIn"]

ومن خلالها سنقوم بزيادة متغير +1 كل ماكان الدخول خاطأ

public int NoOfLogIn
        {
            get
            {
                if (ViewState["NoOfLogIn"] == null)
                    return 0;
                int _NoOfLogIn = Convert.ToInt32(ViewState["NoOfLogIn"]);
                _NoOfLogIn++;
                return _NoOfLogIn;
            }
            set
            {
                ViewState["NoOfLogIn"] = value;
            }
        }

وفي داخل ال Button نضع الكود التالي

protected void Button1_Click(object sender, EventArgs e)
        {
            if (TextBox1.Text.Trim() != "yaser.net") 
            NoOfLogIn++;
        }

وفي ال PageLoad نضع الكود التالي :

protected void Page_Load(object sender, EventArgs e)
        {

            if (NoOfLogIn >= 2)
            {
                Label1.Text = "sorry";
                Button1.Visible = false;
            }
        }

أعتقد الكود مايبغالو شرح

اذا عملت Break point في كل من ال PageLoad و ال Button سوف تتضح معاك جميع الاشكاليات ان وجدت

ودمتم في ود.

1

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

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…