يا اخوان عندما ابدء في بناء الموقع الصراحه لا اعرف ماهي الاشياء التي يجب اعطائها للمستخدم والصلاحيات ... يعني مثلآ عندما يسجل المستخدم تكون لديه صلاحيه تعديل بريده الالكتروني او كلمه السر والاسم وهذه الامور لكنني مازلت اجهل باقي الامور التي يجب وضعها في عين الاعتبار يعني حاليآ بأمكاني ان استخدم لغة البرمجة واعمل صفحات والخ ولكن عندما اريد ان ابدأ في برمجة الموقع لا اعرف ماذا افعل ؟؟؟ يعني هل اجعل صفحه خاصه للمستخدمين واعمل جدول خاص لهم في قاعدة البيانات وجدول خاص للمواضيع في الموقع وهل اعمل لكل شيء جدول خاص في قاعده البيانات ام اجمع كل الاشياء في جدول واحد .... اعرف كلامي شوي غريب لكني لا اعرف ماهي التركيبه الاساسيه لتهئية الموقع وقواعد البيانات قبل البرمجه والخ من هذه الامور .... اتمنى فهمتم قصدي
لدي مشكله في الفهم عند بناء موقع الكتروني ارجو دخول مبرمجي المواقع لو سمحتم
كل شيء بالبرمجة منطقي
العضو باعتباره زائر للفندق الخاص بك او لبيتك
ماهي صلاحيات هذا الزائر
ان يرى شكل المنزل الخارجي
يستطيع التعديل على كل شيء خاص بغرفته شيء شخصي فيه
لكن ليس له صلاحية ان يعدل على غرف باقي الزوار
او ان يدخل لنظام الفندق ويقوم بالتعديل لانه زائر وليس مدير
هكذا هي البرمجة
له صلاحيات التعديل على الايميل الباسورد الى اخره ماعدا الاسم وهي حريه شخصية من المبرمج بأن يجعلها متاحه او لا
وايضا يستطيع كتابة موضوع بالاقسام المسموح له ان يكتب المواضيع فيها
وان يعدل على المواضيع اللي هو كتبها بفترة زمنيه وغير مسموح له بالتعديل على مواضيع غيره مالم يكن من الطاقم الاداري او المشرفين
كل شيء بالمنطق
ومن ناحية الجداول هو ترتيب بحيث كل شيء له جدول افضل من ناحية الترتيب وفهم الامور بسلاسه
وتربط بين الجداول join
وشوي شوي راح تفهم الفكره مع التطبيق
اتمنى لك التوفيق
الله يوفقك حبيبي والله هذه هي مشكلتي يعني لا اعرف كيف يكون الترتيب يعني هل يوجد هناك ترتيب standar لعمل او لتهيأه قاعده بيانات الموقع ام انها على حسب مزاجي افصد حسب رؤيتي لان هذا الموضوع مسبب لي ارباك انا خبرتي جيده جدآ في البرمجه ولكن دائمآ مشكله ترتيب قواعد البيانات وملفات الموقع تكون عائق قوي امامي ودائمآ اتلخبط عند برمجة الموقع
يوفق الجميع يارب
لو تشوف اي سكربت مشهور او اي موقع كبير بتلاحظ الترتيب يدل عالممعنى
مثلا جدول users بتلاقي فيه الرقم الفريد id واليوزر النك نيم والباس والايميل الخ من معلومات تخص العضو
تشوف جدول اخر اسمه media هذا من اسمه يدل على الميديا يحتوي id والعنوان و و و الى اخره
والكونتنت او المحتوى يكون بداخله شيء يخص المحتوى
لانك بذلك تسهل على نفسك مستقبلا وتسهل على غيرك من المطورين من اسم الجدول يعرف هو خاص بإيش ويحتوي على ايش
مثل تعريف المتغيرات بالبرمجه لازم المتغير يدل على شي خاص بالقيمة اللي يحملها
هذا الدارج بين المبرمجين والمطورين مثل الكومنتات لفهم عمل كل كود هنا كل جدول من اسمه يدل على محتواه
صعب تسوي جدول ويكون فيه الاعضاء ومعلوماتهم وفيه المواضيع وفيه الميديا وفيه وفيه وفيه وفيه
اتمنى انك فهمت قصدي
اول شي تعلم php او اي لغة تئدي نفس الغرض
بعدها اصنع جدول المستخدمين وضع فيها الايميل و اليوسر و الباس (لازم تشفر الباس ^^)
الخ
بعدها انشئ صفحة تسجيل مستخدم جديد
و تسجيل الدخول و تسجيل الخروج
^^
و بالنسبة للموضيع فهي في جدول خاص
و التعليقات في جدول اخر خاص و تربطهم عن طريق ال id
اخي الكريم خبرتي جيده في ال php ولكن اقصد عند بناء الموقع هل هناك معايير قياسية لترتيب قواعد البيانات يعني مثلآ اعمل table خاص للمستخدمين و table خاص للتعليقات والمواضيع ام ادمجهم كلهم في قاعدة بيانات واحده وهل هناك امورآ اخرى يجب اضافتها !!! هذا هو مقصدي لان هذا الموضوع سبب لي ارباك
اتوقع اني فهم قصدك
اولأ عند تسجيل دخول اي عضو من الاعضاء سيحصل علي $_SESSION خاص به
وبداخل $_SESSION :ا id المستخدم الخاص به في قاعدة البيانات
اذاً انت ستتصل بقاعدة البيانات بجدول الاعضاء .
اصنع عامود جديد في قاعدة البيانات بجدول الاعضاء
وجعل هذا العامود خاص بصلاحيات الاعضاء (يفضل ان يكون محتوى العمود بالجيسون لاكن انتبه من ثغراته^^)
اذا عند تسجيل دخول اي عضو ستجلب بياناته من جدول الاعضاء ومن بياناته الصلاحيات (مستخدم عادي او مدير او مشرف)
اذا كيف تعرف اذا كان العضو زائر او مستخدم
افحص دالة $_SESSION اذا لم نكن موجودة فيعني انه زائر
وذا كانت موجودة تئكد من وجود المستخدم بداخل البيانات
اذا لم تجده احذف ما بداخل $_SESSION
اتمنى اني افدتك
و بالنسبة لقاعدة البيانات اتوقع انك تستطيع انشاء عدد لا نهائي من الجداول
لاكن رتب الجداول بحيث لو وصل عدد مستخدمي الموقع مليون
لن يئثر عليه
رتبه بحيث يسهل عليك البحث بداخلها
^_^
شكرآ لك على المساعده اخي الكريم ولكن ايضآ ليس هذا مقصدي ( اعرف انني تعبتك معي ) ... انا ألي اعرفه ان المستخدم يجب ان نضع له ايميل وباسوورد وصلاحيه هل هو مستخدم او مدير ونتأكد منه والخ ... هذه كلها اعرفها ولكن اقصد هل الموقع يحتوي على قاعدة بيانات خاصه بالمستخدمين والتعليقات والتاريخ والمواضيع فقط ام ان هناك امورآ اخرى ؟؟؟
بالنسبة لترتيب قاعدة البيانات بشكل احترافي
فهذا علم كبيييير
لكنه ليس مستحيل
لاكن لا مشكلة اذا صممت قاعدة بيانات بنفسك
لاكن اعلم انه اذا وصل عدد مشاهدات كبيييير لموقعك مثل 50 الف او 100 الف
في اليوم
((لا اعلم ان كان هذا عدد كبير او لا ^^))
يجب عليك
اخذ كورسات في mysql
و تطوير قاعدة البيانات بالعلم الذي كسبته من الكورسات
ألف شكر لك ياحبيبي الغالي يعني افهم من كلامك لاتوجد هناك معايير قياسيه لعمل قواعد البيانات وانما انا مااراه مناسبآ اقوم بعمله ؟؟
هناك ممارسات جيدة Best Practices لكن لا توجد معايير قياسية.
ما هو ال PDO ؟
و ما الفرق بين استخدام قواعد البيانات mysql و mysqli و mariadb و ماهي خصائص كل واحدة و ماهي المنصوح بها ؟
PDO هي دالة في php تستخدم في اكثر من نوع قاعدة بيانات و منها mysql و sqlLite
و اتوقع انها هي الافضل انصحك بتعلمها
PDO ليست دالة بل مكتبة تنصب كإضافة لـPHP تتعامل مع بعض أنواع قواعد البيانات المشهورة @zarqos
سؤال آخر لو سمحت ...
ما الفرق بين GET و POST في الفورمز ؟
و متى نستخدم الأولى و لا نستخدم الثانية و العكس مع مثالي إن أمكن
لم يسبق لي ان استعملت get في فورم
لاكن اتوقع لكني لست متئكد عند ضغطك علي submiet
المعلومت التي سترسلها بالget ستكون مكتوبة في الرابط و البوست ترسله بدون ان يضهر في الرابط
اتمني من الاعضاء الاخرين بالافادة
هذه تسمى طريقة الإرسال في بروتوكول HTTP يوجد الكثير من الأنواع من أشهرهم GET، POST، PUT، DELETE الفرق أن GET لا يفترض أن يكون هنالك بيانات في محتوى الطلب، يمكنك استخدام أكثر من نوع مع بعضهم البعض لتنظيم إرسال البيانات مثلًا GET لطلب العرض، POST للإضافة PUT للتعديل .. اقرأ عن RESTful API.
مشكلتي الكبيرة في قواعد البيانات ... قرأت و شاهدت العديد من الدروس في هذا الخصوص و إلى الآن لم أتوصل إلى طريقة لاستيعاب مفهومها
بمعنى آخر كيفية عمل conception of the database
أعرف مفهوم الجداول و المفاتيح الرئيسية و الثانوية أو الأحنبية لكن مشكلتي في الربط بين الجداول relational databases
لا تزعج نفسك في البداية فقط تعلم من أخطائك هذه المرة لم أعطي المستخدم إمكانية تغير كلمة مروره المرة القادمة سأنتبه، هته المرة نسيت إنشاء جدولٍ للأقسام المرة القادمة سأفعله، فقط ادرس الموقع في البداية مع العميل وتأكد من جميع التفاصيل مع ورقة وقلم وإبدأ بالتخطيط لكل صغيرة وكبيرة وكيف ستكون حقول المستخدمين وما هي علاقتها بالمقالات وهكذا.
اخي العزيز الاجابة علي سؤالك انت فقط تعرفها !
انت الذي سوف تقوم ببرمجة الموقع وانتا تعرف ما هيا الخصائص التي سوف تتوفر بموقعك !
اذا كان موقع تسوق لن تعطي المستخدم خاصية مسح عروض احد اخر !
يعني هل اجعل صفحه خاصه للمستخدمين
يمكنك ان تجعل صفحة المستخدم عامة ولكن لا يوجد بها تعديل يعني اي شخص يستطيع الاطلاع علي الاشياء العادية مثلا اسمه والمواضيع التي قام بنشرها وصورته الشخصية وتاريخ تسجيله ووسائل التواصل معه مثلا حساباته علي شبكات التواصل الاجتماعي فقط , ولن تعرض بريده الالكتروني ورقمه السري .
واعمل جدول خاص لهم في قاعدة البيانات وجدول خاص للمواضيع في الموقع وهل اعمل لكل شيء جدول خاص في قاعده البيانات ام اجمع كل الاشياء في جدول واحد
نعم هذا افضل من باب الترتيب
جدول خاص مثلا للتعليقات
جدول خاص بالمواضيع
جدول خاص بالمستخدمين
من افضل ان تقوم بالاتصال بقاعدة البيانات بجدول واحد يحتوي علي كل شي او بكل صفحة تتصل ب اسم مخصص لها ؟
مثلا من صفحة الكومينت تتصل بجدول الكومنتات وهكذا !
تحس انه تكويدك مرتب , اليس كذلك ؟
انصحك بمشاهدة دورة الاستاذ اسامة محمد لبناء موقع كامل
اعذرني اذا كانت هنالك اخطاء املائية فـ انا اكتب هذا التعليق وانا علي وشك النوم :D
اتمني ان اكون قد افدتك , موفق
أخي عليك متابعة دورات عن كيفية بناء مواقع من الصفر
هناك العديد من الدورات على الإنترنت حتى باللغة العربية
كل ما عليك هو فهم وتطبيق هذه الدروس
دورة لبناء موقع الكتروني من الصفر للأستاذ اسامة الزيور (يمدحه الكثير من الإعضاء في حسوب):
هناك دورة لبناء سكربت منتدى للأستاذ عبدالله عيد :
الدورة قديمة بعض الشيء لكنها كفيلة بتعليمك الأساسيات
إذا قمت بتوسيع بحثك باللغة الإنجليزية فهناك الكثير من الدورات
لقد شاهدت احد تعليقاتك بالاعلي ولقد ذكرت انه احد المشاكل التي تواجهك هيا ربط بين قواعد البيانات
انصحك بمشاهدة دورة الاستاذ اسامة محمد لتعلم MySQL
سؤالك جميل ولكنه عام جداً، اتمنى اجابتي على هذه الأسئلة حتى أحاول مساعدتك بما أعرفه:
1- انت الان تجيد القيام بعمليات ال CRUD كاملة، صحيح؟
2- اذا كانت الاجابة بنعم، فما هي بيئة قواعد البيانات التي تستخدمها او تود استخدامها في مشروعك؟ (SQL, NoSQL)؟
هذه الدورة لن تجد مثلها في الانترنت ( برمجة منتدى خطوة بخطورة )
التعليقات