صفحة 9 من 12 الأولىالأولى ... 456789101112 الأخيرةالأخيرة
النتائج 121 إلى 135 من 178

الموضوع: Codeigniter .. أسئلة ومناقشات ..

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


    عزيزي ... لو اردت ان تجلب العنوان في الرابط .. بإستخدام طريقة البرمجة العادية .. بدون استخدام CI ..
    ماذا كنت ستفعل ؟





    __________________
    مدونتي | تويتر


  2. #122


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

    لدى سؤال الان فى غاية الاهمية

    عند عمل لوحة التحكم
    فسيكون لها ملف داخل controller باسم admin مثلا ، الا ترى انه سيكون غير طبيعى ان تضيف كل مهام لوحة التحكم فى functions داخل هذا الملف فقط ، لذا يجب ان يكون هناك عدة ملفات للوحة التحكم وايضا يجب ان تكون داخل فولدر خاص لأن البعض يحتاج عمل جدار نارى عليها

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

    شكرا لك مرة اخرى





    __________________
    http://www.facebook.com/Essam196
    e-mail:me@essam-mohamed.info

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


    اخي Essam Mohamed

    اشكرك على طرح مثل هذه الأسئلة الحساسة والمهمة جداً ...

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

    حسناً عزيزي الحل ابسط مما تتصور!

    فقط انشئ ملف جديد بأسم admin بداخل مجلد controllers
    ثم ضع بداخله ما تريد

    الآن إلى ذهبت إلى مجلد الأدمن فقط http://www.example.com/ci/admin سيظهر امامك خطأ وهو بسبب انك لم تدخل إلى Controller معين .. بل دخلت فقط إلى المجلد . ولن يسمح لك CI بمشاهدة المحتوى.
    ولكن, لكي تجعل من يدخل إلى مجلد admin فقط , يتم تحويله إلى صفحة الأدمن الرئيسية
    سنحتاج ان نستخدم بعض خدع الـ Routing وهي .. افتح ملف config/routes.php
    ثم ضع هذا السطر .. ووظيفته .. تحويل من دخل http://www.example.com/ci/admin إلى http://www.example.com/ci/admin/home ( حيث انك ستنشئ Controller بأسم home داخل مجلد Admin وهو الـ Controller الخاص بصفحة الأدمن الرئيسية ) :
    كود PHP:
    $route['admin'] = "admin/home"
    الآن فعلياً .. التحويل لن يظهر في الرابط امامك ( كما لو كان الحال بإستخدام تحويل الـMeta ) ... بل ستكون انت بداخل الرابط ci/admin كما انت .. ولكن CI سيظهر لك محتوى ci/admin/home

    الآن .. بخصوص عملية الحماية ... كالعادة .. سأعود واقول ان افضل طريقة لإستخدام نظام العضويات ( سواء كان للوحة التحكم. او للموقع ), هي استخدام مكتبة dx_auth والتعديل عليها في حالة الحاجة لذلك

    لو شاهدت موضوعي بخصوص هذه المكتبة ستجد ان هناك Function خاص بالتأكد من الصلاحيات .. تضعه في الصفحة .. ولن يسمح لأحد بالدخول إليها إلا اذا كان Admin ( أي, في مجموعة Admin )

    الـ Function هو :
    كود PHP:
    $this->dx_auth->check_uri_permission(); 
    الآن بديهياً .. لا نريد ان تأخذ هذا الـ Function ونكرره في كل الـ Controllers الخاصة بلوحة التحكم !!
    بل .. سنقوم بعمل عملية Extending لنظام الـ Controllers بحيث .. بدلاً من ان نقوم بتوريث الـ Controllers كالمعتاد من كلاس ( Controller ) .. سنقوم بتوريثها من كلاس ننشئه نحن ونضع فيه نظام التأكد من الصلاحيات ومن ثم نجعل هذا الكلاس يرث من كلاس Controller

    الآن لتمديد الـ Core الخاص بـ CI وبالتحديد في كلاس Controller , الذي نستخدمه في جميع الـ Controllers التي ننشئها .. سنقوم بعمل ملف بسيط ونضع به شروطنا للكلاس الجديد , للمزيد حول تمديد الـ Core شاهد هنا فقرة "Extending Core Class"

    حسناً ... اولاً ننشئ ملف جديد بأسم MY_Controller.php ونضعه في مجلد application/libraries

    ثم نجعل محتواه كالآتي :
    كود PHP:
    <?php
    class Admin_Controller extends Controller {
        function 
    Admin_Controller() {
            
            
    parent::Controller();
            
    $this->load->library('dx_auth');
            
            if(
    $this->uri->segment(2) !== "login" OR $this->uri->segment(2) !== "logout"){
                
    $this->dx_auth->check_uri_permissions();
            }
            
         }
    }
    ?>
    الآن لاحظ بأنني هنا قمت بعمل كلاس جديد , يرث من الكلاس الأصلي والمعتاد وهو Controller ويعمل كما يجب .. الآن قمت بعمل Function بنفس اسم الكلاس بحيث يتم تنفيذ مابه بمجرد تحميل الكلاس نفسه ...

    ومن ثم .. قمت بطلب مكتبة dx auth وقمت بالتأكد اولاً من اننا لسنا بداخل صفحة admin/login او admin/logout لكي نتمكن من تسجيل الدخول والخروج .. فلو افترضنا بأن هذا الشرط غير موجود ... فإنك لن تستطيع حتى الدخول إلى صفحة تسجيل الدخول وسيتم طردك إلى صفحة المنع

    الآن نقوم بعمل Controller للصفحة الرئيسية الخاصة بالأدمن ونسميه controllers/admin/home.php

    ونضع محتواه كالآتي :
    كود PHP:
    <?php
    class Home extends Admin_Controller {

        function 
    Home(){
            
    parent::Admin_Controller();
        }
        
        function 
    Index()
        {
            echo 
    'Test!';
        }

    }
    ?>
    لاحظ من انه في المعتاد .. نقوم بتوريث الـ Controllers من كلاس Controller .. ولكن في هذه المرة .. قمنا بتوريثه من الكلاس الجديد الخاص بنا واسمه Admin_Controller
    الآن , سيتم عمل تحقق من صلاحية الوصول إلى هذه الصفحة بمجرد ان نقوم بتوريث الـ Controller من كلاس Admin_Controller ...

    انتهى

    ملاحظة 1 : يقوم فنكشن check_uri_permissions بإرسالك إلى صفحة auth/deny في حالة لم يكن لديك الصلاحية للوصول إلى هذه الصفحة .. يمكنك تعديل هذا الرابط من خلال تعديلك على هذا الفنكشن وبالضبط من ملف application/libraries/dx_auth.php

    ارق التحية





    __________________
    مدونتي | تويتر


  4. #124


    شكرا لك وضحت الرؤية وجزاك الله خيرا عن هذا

    اعكف حاليا على قراءة دليل الاستخدام الخاص بالاطار واتمنى لو تساعدنى خلال هذا الوقت بالتعديل على نظام القوالب واستخدام كلاس اخونا ضيف بدلا منه لأنى ارى من وجهة نظرى انه الافضل فى التعامل مع القوالب





    __________________
    http://www.facebook.com/Essam196
    e-mail:me@essam-mohamed.info

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


    عزيزي .. نظام القوالب الخاص بـ CI انا شخصياً لا استخدمه,
    ولكن يمكنك استخدام سمارتي .. ابحث في المنتدى الخاص بـ CI او الويكي

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

    ارق التحية





    __________________
    مدونتي | تويتر


  6. #126


    شكرا لك وفى انتظار الجزء الخامس من السلسلة وسأحاول ايضا ادخل القالب السهل ان شاء الله ، اما نظام سمارتى فانا لا احبه واعتقادى بان كلاس اخونا ضيف هو الافضل :con2::con2:





    __________________
    http://www.facebook.com/Essam196
    e-mail:me@essam-mohamed.info

  7. #127
    عضو فعال
    تاريخ التسجيل
    Dec 2008
    المشاركات
    1,897


    الفاضل almosmem
    جزيت خيراً على الردود لكن لم اجد ردا منك حتى الان يا حبذا و ياحبذا و ياحبذا لو انك تعجل(لو يمديك الوقت اليوم قبل غداً ) ضع لنا شرحاً لـ :
    عمل لوحة تحكم بسيطة لتعديل مكتبة الكتب .
    جلب العناوين بالروابط عن طريق لوحة التحكم .






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


    الفاضل almosmem
    جزيت خيراً على الردود لكن لم اجد ردا منك حتى الان يا حبذا و ياحبذا و ياحبذا لو انك تعجل(لو يمديك الوقت اليوم قبل غداً ) ضع لنا شرحاً لـ :
    عمل لوحة تحكم بسيطة لتعديل مكتبة الكتب .
    جلب العناوين بالروابط عن طريق لوحة التحكم .
    بخصوص الجزء القادم .. بإذن الله سيكون حول استخدام بعض المكتبات المهمة في CI

    وايضاً عزيزي لازلت لم افهم ما تقصده بخصوص وضع العنوان في الرابط ...
    قم بتنفيذ نفس الفكرة كما لو كنت ستنفذها بدون استخدام CI .. ( بالرغم من انني لم افهم المطلوب بالضبط)


    ارق التحية





    __________________
    مدونتي | تويتر


  9. #129
    عضو فعال
    تاريخ التسجيل
    Dec 2008
    المشاركات
    1,897


    ياريت تتعجل في طرحه و يكون ايضا استكمال لموضوع مكتبة الكتب .
    المطلوب باختصار نعرف ان اـCI مثلا عند طلب كتاب معين سيكون كالاتي :
    example.com/ci/books/details/1
    1 = id
    طيب ودي ايضا اضيف segment جديد بالرابط يحمل عنوان الكتاب يستدعيه من حقل title الان اظنك فهمتني






  10. #130


    ياريت تتعجل في طرحه و يكون ايضا استكمال لموضوع مكتبة الكتب .
    المطلوب باختصار نعرف ان اـCI مثلا عند طلب كتاب معين سيكون كالاتي :
    example.com/ci/books/details/1
    1 = id
    طيب ودي ايضا اضيف segment جديد بالرابط يحمل عنوان الكتاب يستدعيه من حقل title الان اظنك فهمتني
    بسيطة جدا يا غالى فى صفحة الـ view التى ستكون على هذا الشكل

    كود PHP:
    <?php foreach ($query->result() as $allbooks) { ?>
        <li><a href="books/details/<?=$allbooks->id?>"><?=$allbooks->title?></a></li>
    <?php ?>
    قم باضافة متغير title فى الرابط ليكون بهذا الشكل

    كود PHP:
    <?php foreach ($query->result() as $allbooks) { ?>
        <li><a href="books/details/<?=$allbooks->id?>/<?=$allbooks->title?>/"><?=$allbooks->title?></a></li>
    <?php ?>






    __________________
    http://www.facebook.com/Essam196
    e-mail:me@essam-mohamed.info

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


    اخي Essam Mohamed جزيت خيراً ..

    هذا بالضبط ما قصدته اذا كنت تعرف الطريقة التي ستقوم بتنفيذها في البرمجة عادية .. فحتماً ستجد لها الحل في CI . ولذلك يجب ان لا نعتبر CI كلغة برمجة منفصلة عن PHP!

    ارق التحية





    __________________
    مدونتي | تويتر


  12. #132
    عضو فعال
    تاريخ التسجيل
    Dec 2008
    المشاركات
    1,897


    يعطيكم العافية
    اسألك يا مصعب متى ستطرح الدرس الخامس ان شاء الله فقد طال الانتظار






  13. #133
    عضو فعال
    تاريخ التسجيل
    Dec 2008
    المشاركات
    1,897


    قمت بتحميل dx auth و لكنها لا تشتغل على السيرفر المحلي طبعاً التنصيب 100% من نقل للملفات كما في دليل الاستخدام و تم زرع قاعدة البياانات المرفقة مع الملف المضغوط .
    و بموقعي تشتغل بنفس الخطوات !!! انتظر حل بارك الله فيكم فلا ارتاح بالبرمجة على موقعي مباشرة
    و قمت جاهداً بمحاولة تغيير رابط المكتبة ليصبح : index.php/member مكان index.php/auth ففتحت ملف الكونفج تبع المكتبة config/dx_auth.php و استبدلت جميع الروابط التي تحميل auth/* بـ member/* طبعا و غيرت اسم ملف auth.php الموجود بالـcontrollers بـmember.php و لكن يعطيني الصفحة غير موجودة






  14. #134
    عضو فعال
    تاريخ التسجيل
    Dec 2008
    المشاركات
    1,897


    تم حل جميع المشاكل بحمد الله ، الاول بترقية اصدار اللغة الى 5
    و الثاني كله تلاعب بالـURL .






  15. #135
    عضو نشيط
    تاريخ التسجيل
    Feb 2008
    المشاركات
    38


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

    اولا شكرا لك اخى المصمم على طرحك لشرح هذه الفريم ورك

    لدى بعض الاسئلة عن الحماية

    انت كتبت فى جزء الحماية انو الفريم ورك تحمى من الxss تلقائيا وبعد ذلك ذكرت انك ممكن تفعلها!

    ثانيا : ماذا عن باقى الثغرات

    sql
    file_include

    لانى جربت سويت فورم وضعت بيه كلمة select

    وطبعها بطريقة عادية جدا

    فكيف ذلك










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

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

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