النتائج 1 إلى 9 من 9

الموضوع: الغاء عمل refresh بعد ارسال الفورم ؟؟

  1. #1

    الغاء عمل refresh بعد ارسال الفورم ؟؟



    السلام عليكم

    لدي مشكلة وابحث عن حل لها :

    لدي صفحة عبارة عن فورم ، وهذا الفورم به حقل مخفي اضع فيه حالة الفورم اذا كان جاهزا للارسال ام لا ، وفي ملف php آخر اقوم بمقارنة هذا الحقل ، فإذا كان محتواه "OK" على سبيل المثال اقوم بالارسال واظهر رسالة بأنه تم الارسال بنجاح ... والعكس صحيح .

    المشكلة انه بعد الارسال وظهور الرسالة التي تتعلق بنجاح عملية الارسال اذا قام المستخدم بعمل refresh فإنه سيرسل المعلومات مرة أخرى ويتم التنفبذ ( طبعا يسأله المتصفح اذا كان يريد استرجاع المعلومات ) .....

    هذه سببت لي الكثير من المشاكل خاصة في طلبات الشراء !!
    كيف لي ان الغي تأثير عمل refresh وان لا يتم ارسال المعلومات مرة أخرى ؟؟

    بارك الله فيكم





    __________________
    إستخدم ملفك الخاص لكتابة توقيعك


  2. #2
    عضو سوبر نشيط
    تاريخ التسجيل
    Feb 2004
    المشاركات
    627


    السلام عليكم

    مشكور اخوي على هل موضوع لأنه إلي راح يحل مشكلتك راح يحل مشكلتي بعد

    لأني اعاني من نفس السالفه

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

    وشكراً لك

    أخوك حمد





    __________________
    اللهم أغفر لنا ولوالدينا وللمؤمنين والمؤمنات والمسلمين والمسلمات
    الأحياء منهم والأموات يا أرحم الراحمين

  3. #3
    عضو نشيط جدا
    تاريخ التسجيل
    Feb 2003
    المشاركات
    572


    اعطيها كوكيز اخوي
    او اجعله بعد ارسال البيانات ينتقل لصفحه اخرى..
    يعني تماما مثل لما بتضيف موضوع او رد بالمنتديات





    __________________
    لا اله الا انت سبحانك اني كنت من الظالمين

  4. #4
    عضو فعال
    تاريخ التسجيل
    Jul 2003
    المشاركات
    1,576


    عندي لك حل بسيط ..

    ما هي الطريقة التي تستخدمها في معالجة بيانات الفورم ؟

    كود PHP:
    if ($_POST['sumbit']){ 
    ولا عن طريق ملف ثاني وتقوم بتحديد الأكشن ؟





    __________________
    SWF Thumbnail - tweet me

  5. #5
    عضو شرف
    تاريخ التسجيل
    Apr 2002
    المشاركات
    1,379


    الطريقه , اذا تم التأكد من قيمة الحقل بأنها OK , اعد توجيه الشخص الى صفحه اخرى بالدالة Header وفي هذه الصفحه اذكر للمستخد ان البينات تم ارسالها بشكل صحيح ,مثال

    كود PHP:
    header("location:form.php?msg=ok"); 






    __________________
    ضيف الله العتيبي مبرمج حر و مهندس معتمد من زيند (ZCE)
    الاتصال: daif@daif.net او جوال: 0556639884
    الخدمات: تقديم استشارات برمجيه, تطوير بوابات/خدمات إلكترونيه للقطاع العام او الخاص .

  6. #6


    شكرا جزيلا أخي ..
    لقد قمت بتعديل الكود حسب اقتراحك وأدى المطلوب !!

    ولكن

    اذا قام المستخدم بالرجوع الي صفحة واحدة سابقة وقام بعمل Refresh فإنه سيقوم بارسال الفورم مرة أخرى !!!!!

    هل من حل لذلك ؟؟

    بارك الله فيكم





    __________________
    إستخدم ملفك الخاص لكتابة توقيعك

  7. #7
    عضو شرف
    تاريخ التسجيل
    Apr 2002
    المشاركات
    1,379


    يمكن , باستخدام الجافا اسكربت (حاول بنفسك)
    أو عن طريق بي اتش بي , وذللك بوضع رمز خاص في الصفحة التى يوجد فيها النموذج (على شكل حقل مخفي) وقمة هذه الرمز تكون عشوائية , واذا تم الارسال يستخدم على انه رقم الرساله او الموضوع , بحيث لا يسمج لهذه الرقم ان يتكرر , اي اذا تم عمل تحديث للصفحة سوف تقوم بالبحث عن هذه الرقم اذا كان موجود فإنه قام بتحديث الصفح , اذا لم يكن موجود اقبل النموذج .





    __________________
    ضيف الله العتيبي مبرمج حر و مهندس معتمد من زيند (ZCE)
    الاتصال: daif@daif.net او جوال: 0556639884
    الخدمات: تقديم استشارات برمجيه, تطوير بوابات/خدمات إلكترونيه للقطاع العام او الخاص .



  8. السلام عليكم .. الحل ليس بالمعقد ولكن يوجد افكار حلوة ..
    الطريقة هي انك تحفظ session و تسمية مثلاً insert_into_table ثم تفعل الاتي:
    عندما تكون في صفحة الفورم "Form"، تعطي تلك الsession
    insert_into_table = TRUE .. اي عندما تذهب الى ذالك الصفحة، تعطي السكربت امكانية ادخال البيانات.
    وعندما تنتهي من ارسالها الى الصفحة التي تعالج تلك البيانات .. اذهب الى الصفحة التي تليها و تعطي ال nsert_into_table = FALSE; Session وبعدها تذهب الى اي مكان تريدة .. ولا تستطيع الذهاب الى الصفحات التي تتوجب دخولها بعد تحويل الsession الى
    insert_into_table = TRUE

    ويوجد افكار اخرى ولكن تستطيع ان تبني فوق هذة الفكرة ... ولكن اهذا ما افعلة في معضم الاوقات..

    وشكراً





    __________________
    هلابي افضل المواقع العربية تصميماً
    انصح باستخدام ابونتو

  9. #9
    عضو سوبر نشيط
    تاريخ التسجيل
    Nov 2005
    المشاركات
    779


    السلام عليكم

    و الله اعجبتني الطريقتين
    الاولى بوضع رمز خاص في الصفحة التى يوجد فيها النموذج
    و الثانية بواسطة الـ session


    شكرا لكم





    __________________
    أهلا و سهلا بكم في :-
    موقع دار الأوائل
    تفضل معنا خدمات الاستضافة
    موقع العبقري لخدمات الاستضافة





ضوابط المشاركة

  • لا تستطيع إضافة مواضيع جديدة
  • لا تستطيع الرد على المواضيع
  • لا تستطيع إرفاق ملفات
  • لا تستطيع تعديل مشاركاتك
  •  

أضف موقعك هنا| اخبار السيارات | حراج | شقق للايجار في الكويت | بيوت للبيع في الكويت | شركة كشف تسربات المياه | شركة عزل اسطح بالرياض | عزل فوم بالرياض| عزل اسطح بالرياض | كشف تسربات المياة بالرياض | شركة عزل اسطح بالرياض