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

الموضوع: حيلة مع ال GET ربما تنفعك !

  1. #1

    حيلة مع ال GET ربما تنفعك !



    بسم الله الرحمان الرحيم

    سنتكلم عن حيلة او طريقة اخرى للتعامل مع ال GET

    ما هو معروف عند جميع المبرمجين ان طريقة جلب معلومات من العنوان يكون عن طريق GET

    وطريقة عملها هي

    Test.php?id=254

    ونكتبه برمجيا

    كود PHP:

    $id
    =$_GET['id']; 
    ولكن ماذا لو اردنا ان نجعل الرابط هكذا

    Test.php?254



    بكل سهولة اولا يجب علينا معرفة ان $_GET تصبح مصفوفة يوجد داخلها المفتاح وقيمته

    سنطبع ما يوجد في هذا الرابط test.php?id=254 لكي نفهم ماذا بداخل $_GET

    كود PHP:

    Print_r
    ($_GET); //Array ( [id] => 254 ) 
    ولو اردنا ان نطبع هذا الرابط test.php?254 ؟

    النتيجة هي ان القيمة ستصبح هي المفتاح او بالأصح المتغير

    كود PHP:

    Print_r
    ($_GET); //Array ( [254] => ) 
    لاحظ ان مكان القيمة اصبح فارغا

    وماذا لو اردنا ان يكون الرابط يحتوي على لكثر من قيمة ؟

    بكل بساطة سنضيف & ويكون الرابط هكذا test.php?id=254&cat=13

    وستصبح المصفوفة على هذا الشكل

    كود PHP:

    Print_r
    ($_GET); // Array ( [id] => 254 [cat] => 13 ) 
    ومرة اخرى نزيل id و cat ليصبح هكذا

    كود PHP:

    Print_r
    ($_GET); // Array ( [254] => [13] => ) 
    والأن كيف نستفيد من هذه الطريقة لاستخراج المعلومات من القاعدة ؟

    اولا يجب ان تعرف كم لديك من المتغيرات في الرابط

    مثلا لدينا اثنين الأول هو id والثاني هو cat

    بكل بساطة

    كود PHP:

    /* نتأكد اولا من استخدام الرابط بشكل سليم
    ونعمل حلقة تكرار لاستخراج ما يوجد في ال GET وتخزينها في مصفوفة
    */
    if(isset($_GET)){
    foreach(
    $_GET as $val => $value ){
    $Nad[]=$val;
    }
    }
    $id=$Nad[0]; // متغير يحفظ فيه رقم المقال على سبيل المثال
    $cat=$Nad[1]; // متغير يحفظ فيه رقم القسم

    // وتستخدمه في جلب المعلومات من القاعدة
    $sql="select * from table_name where id='$id' AND cat='$cat'";
    '"; 
    والسلام عليكم





    __________________
    عدت
    اقتراحاتكم -> www.elbachiri.com


  2. #2


    روعة و الله يا اخ Nadorino بارك الله فيك
    و نفعنا بعلمك





    __________________
    أحمد أبو النصر
    Junior php Developer
    +20166196074

  3. #3
    عضو نشيط
    تاريخ التسجيل
    May 2007
    المشاركات
    181


    جميل جدا جدا فعلا





    __________________
    يتم قبول الان استقبال اي طلبات التطبيقات
    على اي نوع من المنصات الاتيه للجوال
    ( اندرويد -- ايفون ) تابعنا
    ( أعمالنا - اتصل بنا )
    يمكنك الان عمل تطبيق خاص لمنتداك

  4. #4
    عضو نشيط جدا
    تاريخ التسجيل
    May 2007
    المشاركات
    509


    درس جميل اخوي بارك الله فيك ...





    __________________
    EbNCaNa اخوكم ابن قانا

    [درس] قائمة بريدية بأسهل الطرق بواسطة PHP

    [توقيعك يجب أن لا يكون أطول من 400 حرف يتضمن تجاوز كود المنتدى] - الى متى المعاناة يا حضرة الأدارة ؟

  5. #5


    شكرا لكم جميعا على المرور والتعليق





    __________________
    عدت
    اقتراحاتكم -> www.elbachiri.com

  6. #6
    عضو نشيط جدا
    تاريخ التسجيل
    Sep 2006
    المشاركات
    475


    درس وفكره جميله
    تشكرررررررررررر





    __________________
    omansecurity.com
    Email: OmanSecurity AT gmail DOT com

  7. #7
    عضو نشيط جدا
    تاريخ التسجيل
    Sep 2006
    المشاركات
    547


    جميل جدا، استمتعت بالفكرة






  8. #8
    عضو سوبر نشيط
    تاريخ التسجيل
    May 2007
    المشاركات
    613


    فكرة جميلة ، لكن قد يحدث خطأ عند تغيير ترتيب المتغيرات ..
    t.php?1&2 لا يساوي t.php?2&1





    __________________
    مدونة؟

  9. #9


    OmanSecurity

    شكرا على المرور اخي اتمنى انك استفدت من الطريقة

    DNSerror
    مرحبا بك اخي الحمد لله ان الطريقة اعجبتك

    asaamas

    اخي الكريم نعم سيقع خطأ ان لم تكن القيمة لا تساوي ما في القاعدة كذلك في الروابط العادية نفس المشكل

    عندنا
    index.php?c=117&a=1696

    لنجعله هكذا

    index.php?c=1696&a=117

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

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





    __________________
    عدت
    اقتراحاتكم -> www.elbachiri.com

  10. #10
    عضو سوبر نشيط
    تاريخ التسجيل
    May 2007
    المشاركات
    613


    ما أقصده هو أن
    index.php?c=117&a=1696 يساوي index.php?a=1696&c=117
    بينما
    index.php?117&1696 لا يساوي index.php?1696&117





    __________________
    مدونة؟

  11. #11


    ما أقصده هو أن
    index.php?c=117&a=1696 يساوي index.php?a=1696&c=117
    بينما
    index.php?117&1696 لا يساوي index.php?1696&117
    عادي جدا اذا كان الزائر يريد تغيير القيم من مكانها الصحيح سيسبب مشكلة اقول مشكلة وليست تثغرة وهذا المشكل يتحمله نفس الزائر

    وهنا يأتي دور المبرمج في تحديد قيمة كل GET

    اما اذا كان الزائر دخل الى الصفحة بالطريقة المشروعة لن يكون اي مشكل..
    اتمنى انك فهمت المقصود

    والسلام عليكم





    __________________
    عدت
    اقتراحاتكم -> www.elbachiri.com

  12. #12
    عضو سوبر نشيط
    تاريخ التسجيل
    May 2007
    المشاركات
    613


    نعم ،، بالضبط





    __________________
    مدونة؟

  13. #13
    عضو نشيط
    تاريخ التسجيل
    May 2007
    المشاركات
    31


    درس ممتازوفكرة ممتازة أيضاً





    __________________
    الحمد لله رب العالمبن
    العلم نور
    .. والجهل ظلام





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

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

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