اذهب إلى المحتوى

Hassan Hedr

الأعضاء
  • المساهمات

    2852
  • تاريخ الانضمام

  • تاريخ آخر زيارة

  • عدد الأيام التي تصدر بها

    38

كل منشورات العضو Hassan Hedr

  1. يمكنك إنشاء جهاز افتراضي وتخصيص جزء من مساحة الأقراص لديك لتخزين البيانات ضمن ذلك الجهاز، ويمكنك تثبيت أي نظام تشغيل ترغب عليه، لكن عادة ما تستخدم الأجهزة الافتراضية للتجربة أو للاختبار للعمل على نظام تشغيل ما وليس لاستخدامه كنظام تشغيل أساسي، لأن تجربة الاستخدام قد تكون سيئة حيث تضطر لتشغيل برنامج البيئة الافتراضية بعد إقلاعك ضمن النظام الأساسي ثم تشغيل الجهاز الافترضي ضمنه حتى تتمكن من العملي عليه، يمكنك إذا أردت ذلك الاستفادة من المقال التالي: في حال كنت تنوي استخدام لينكس كنظام أساسي يمكنك تخصيص جزء من الأقراص لديك وتثبيت النظام عليها كنظام ثانوي على نفس الجهاز، بحيث يمكنك اختيار الإقلاع مباشرةً إلى نظام التشغيل الذي ترغب عند إقلاع الجهاز، يمكنك الاستفادة من المقال التالي لمعرفة طريقة ذلك في حال كنت تستخدم نظام ويندوز: والمقال التالي لتعلم كيفية تثبيت نظام أوبنتو بشكل مشابه:
  2. بعد اجتيازك للامتحان والنجاح به وحصولك على الشهادة يكون أصبح لديك خبرة عملية في مجال الدورة التي اجتزتها وأصبح بإمكانك تنفيذ المشاريع الحقيقية في سوق العمل، تقدم لك الأكاديمية الإرشاد والتوجيه أثناء فترة بحثك عن عمل من نصائح في تعديل سيرتك الذاتية وتحسينها وكذلك طرق لتحسين ملفك الشخصي في مواقع العمل الحر ما يزيد من فرص حصولك على المشاريع وتنفيذها وبدء العمل، وفي حال طبقت تلك الملاحظات والتزمت بها وهي في الغالب مزايا يجب أن يمتلكها كل عامل حر أو مبرمج يود الحصول على وظيفة وبعد 6 أشهر إذا لم تحصل على عمل أو وظيفة كافي ليغطي مصاريف الدورة سيتم إعادة ما دفعته من تكاليف الدورة، إذا كنت تجد في نفسك الشغف وحب التعلم وتطوير الذات وتحب مجال البرمجة لا تهتم لتلك الأمور، فالبدء بالتعلم والاجتهاد ثم البحث عن فرص العمل وتقديم أعمال متقنة يؤدي حتمًا للدخولك في سوق العمل، والذي تقدمه أكاديمية حسوب ليس سوى تشجيع لك على ذلك في حال كنت متشككًا من قدراتك، يمكنك الاطلاع على ميزات دورات الأكاديمية لمعرفة المزيد بالتوفيق لك في تعلمك
  3. سياسة الخصوصية هي تصريح رسمي من موقعك للمستخدمين يوضح فيها طريقة استخدام بياناتهم ويلزمك ذلك قانونيًا، أي توضح كيف ستستخدم بيانات المستخدمين ومع من ستشاركها وما هي الحالات التي تسمح لك بمشاركة تلك البيانات الشروط والأحكام هي كاتفاق بينك وبين مستخدم الموقع، توضح فيه ما لك وما عليك، مثلًا تفرض شروط على المستخدم بعدم إساءة استخدام خدمتك أو استخدامها لأغراض غير قانونية الغرض من تلك التصريحات قانوني، الجهة التي تطلب منك وجود تلك التصريحات ضمن موقعك هدفها مراجعتها والتأكد أن شروط استخدامك توافق شروط الأفراد الذين يرغبون بالتعامل معهم، يمكنك إما استشارة محامٍ مختص ولديك خبرة بتلك التفاصيل، أو الدخول إلى تلك الصفحات على المواقع الأخرى التي تشبه خدمة موقعك، وستلاحظ نمطًا متكررا من الشروط يفرضها جميع تلك المواقع يمكنك الاستفادة منها لكتابة شيء مشابه، مثلًا موقع أكاديمية حسوب يحوي صفحة لبيان الخصوصية، وصفحة لإرشادات الاستخدام يمكنك الاستفادة أيضًا من أجوبة الأسئلة التالية:
  4. إطار عمل لارافل يقدم توابع يمكن استخدامها للتعامل مع طلبات HTTP القادمة إلى الخادم، لذا بداية يجب فهم بروتوكول HTTP وأن الطلبات فيه تحوي على طرق Methods تعبر كل منها عن نية معينة يريدها المرسل، وفي تطبيقك تستجيب لكل نوع من تلك الطرق على حدى، وذلك عبر تسجيل تابع يعالج الطلب القادم من ذلك النوع، والطرق هي التالي: Route::get('/', function(){ // GET طلب من نوع }); Route::post('/', function(){ // POST طلب من نوع }); Route::put('/', function(){ // PUT طلب من نوع }); Route::patch('/', function(){ // PATCH طلب من نوع }); Route::delete('/', function(){ // DELETE طلب من نوع }); Route::options('/', function(){ // OPTIONS طلب من نوع }); Route::head('/', function(){ // HEAD طلب من نوع }); يمكنك الرجوع إلى توثيق التوجيه (Routing) في Laravel، والاستفادة من قراءة المقالات التالية لفهم HTTP أكثر:
  5. مصدر المشكلة هو ملف تنسيقات بوتستراب الذي تسخدمه، وداخله يوجد استخدام للخاصية color-adjust والذي يجب استبدالها بالخاصية print-color-adjust كما ينصح autoprefixer، وهي رسالة تحذيرية لا أكثر تفيدك بالانتقال إلى استخدام الخاصية الجديدة ولا تؤثر على المشروع، حاول تنفيذ الأمر التالي لتغيير إصدار autoprefixer المستخدم الذي قد يحل المشكلة: npm install autoprefixer@10.4.5 --save-exact في حال بقي التحذير إحذف تلك الاعتمادية بتنفيذ الأمر التالي npm install autoprefixer وابقى على طريقة الاستخدام نفسها، لو كان الأمر ينتج عنه أخطاء ضمن المشروع لكانت الرسالة من نوع error ولما كانت عملية التحزيم من webpack اكتملت، لذا لا داعِ للقلق
  6. حاليًا لا يوجد مسار لذلك ضمن الدورات، يوجد العديد من مكتبات تطوير الواجهات الأمامية الأخرى مثل Alpine و Svelte و Angular وغيرها، مسار دورة جافاسكريبت يغطي أشهر مكتبة منها وهي React لتطوير تطبيقات الويب، و ReactNative لتطوير تطبيقات المنصات الأخرى كأندرويد و IOS، وذلك لحجم التقاطع الكبير بينهما بذلك كمتدرب ستتعلم أساسيات مكتبة واحدة مشهورة فقط وتستطيع باستخدامها بناء تطبيقات بطرف العميل، يمكنك معرفة الفروق بين أشهر تلك المكتبات من المقال التالي: ويمكنك تعلم Vue بنفسك بقراءة سلسلة مقالات "مقدمة إلى vuejs" التالية:
  7. البت Bit أو أصغر وحدة للذاكرة مؤلف من خانة وحدة فقط، يمكن أن يمثل قيمتين فقط إما الصفر 0 أو الواحد 1 البايت Byte هو اجتماع 8 بتات، أي أن البايت الواحد يملك 8 خانات كل منها يمكن أن تكون إما 0 أو 1، مثال : 00000000 أو 00110010 بما أن أصغر خانة وهي البت يمكنها تمثيل عددين فقط، ينشئ مفهوم العد الثنائي، وهو العد باستخدام عددين فقط، بينما في حياتنا العادية نستخدم النظام العشري الذي يحوي عشرة أعداد من 0 حتى، لذا في نظام العد الثنائي يمكن حساب العدد الأقصى الذي يمكن تمثيله برفع عدد البتات إلى قوة 2، مثلًا أكبر عدد يمكن للبايت تمثيله هو 8^2 = 256، يمكنك الاطلاع أكثر على ذلك من المقال التالي: في حالة نوع الحقل TEXT كل محرف يُمثّل ببايت واحد، ويتم تحديد طول المحارف المخزنة ضمن خلية ما عبر بايتان في البداية يمثلان عدد المحارف في تلك الخلية، أي العدد الأقصى للمحارف الذي يمكننا تخزينه هو 8^2 = 65,536 محرفًا، كما هو مذكور في الشرح، يمكنك التعرف أكثر على الذواكر وطرق عنونتها والتعامل مع البايتات لهذا الغرض من المقال التالي:
  8. في هذه الحالة أنت تعلمت تابع آخر يوفره الصنف يمكن أن يفيدك في حالات معينة، وفهمك لحالات استخدامه يريحك حين تواجه مهمة ما أو مشكلة ما في الشيفرة، تكون قد عرفت الفرق بين الاستخدامين وتحل المشكلة باستخدام أحدهما مثلًا، تابع بالاطلاع والقراءة فبهذه الطريقة ستسفيد وتقوي مهارتك ومعلوماتك
  9. التوثيق الرسمي لأي مكتبة أو إطار عملي يشرح وظيفة التوابع أو الأصناف التي توفرها، أو تشرح طريقة استخدامك لإطار العمل بالتفصيل مع توضيح وظيفة كل معامل يمكنك تمريره أو إعداد يمكنك ضبطه، الدراسة من المرجع قد تضيع وقتك أكثر من اللازم، ركز على المهمة بين يديك أو المشكلة أو الدرس الحالي، وأقرأ عن ذاك الجزء فقط لتفهم استخداماته والهدف منه، أو طريقة تحقيق الهدف باستخدام لغة أو مرجع ما، قد تعتبر المرجع شرح موسع لمزايا المكتبة يمكنك في تلك الحالة استخدامه كمصدر داعم للمعلومات التي تحاول فهمها، ليس هناك طريقة ثابتة في التعلم الأمر يختلف من شخص لآخر وكيف يفضل وما يريحك ويبسط الأمور لك، حاول تجربة تلك الطريقة وراقب نفسك ومدى تطورك في فهم الدروس وتطبيق أمثلة مشابهة بنفسك.
  10. بعد جلب أي عنصر من الصفحة باستخدام querySelector مثلًا، يمكن التعديل على خصائص الكائن style له وسيتم تعديل التنسيقات بكل تأكيد، قد يكون الخطأ لديك في الخاصية التي تحاول تغييرها أن يكون اسمها خاطئ مثلًا
  11. تأكد من عدم وجود عنصر آخر يحمل الصنف main، في هذه الحالات يفضل استخدام معرف id بدلًا من صنف class، وذلك لأن المقصود هو وجود عنصر واحد من هذا النوع ضمن الصفحة، والأفضل أيضًا استخدام العنصر <main> مباشرةً، يمكنك التأكد من عدم وجود عناصر مشابهة عبر عرض طول مصفوفة التي تطابق الاستعلام التالي، ويجب أن يكون طولها واحد، نفذ الأمر التالي ضمن console بعد تحميل الصفحة وذلك للتأكد أيضًا من عدم وجود شيفرات جافاسكريبت تعدل على شجرة DOM وتؤثر على ذلك : console.log(document.querySelectorAll(".main").length) بعد التأكد من ذلك يمكنك جلب العنصر والتعديل عليه كالتالي: const main =document.querySelector(".main"); main.style.color = ...; أو إضافة وإزالة أصناف على العنصر كالتالي: main.classList.add('...') // أو main.classList.remove('...') يمكنك الاستفادة من قراءة المقال التالي:
  12. التطبيق العملي والتمرين (سواء مع الدرس أم على مشروع لوحدك) هو الأساس في تعلم أي شيء جديد، لماذا التطبيق العملي لأنه يُعرّضك لمشاكل جديدة دومًا ستبحث عن طريقة حلها وتنفذها بيدك لتحقيق المطلوب، الهدف هنا ليس المطلوب بذاته لأن المشروع وهمي غرضه التدريب، بل الهدف التمرين على البحث عن المعلومة الجديدة والقراءة عنها وفهمها، سواء كان ذلك بالاستماع لشرح الدرس أو بالسؤال أو بالبحث والرجوع للمراجع، ليس هدفك كمبرمج الحفظ أبدًا، الحفظ هو عارض ثانوي للتطبيق المستمر، بل هدفك تطوير مهارة التعلم المستمر والتفكير بحل المشاكل والبحث والسؤال لتحقيق المطلوب، والمدربون ضمن دورات الأكاديمية موجودون دومًا للمساعدة في أي مشكلة أو استفسار أو شرح تحتاج، لا تيأس دومًا يوجد ما هو صعب التعلم، حتى عندما تصبح بمستوى متقدم، وفي حال وجدت أغلب ما تحاول تعلمه صعب هذا دليل على ضعف الأساسيات، حاول الرجوع إليها وتمكينها وستلاحظ الفرق، يمكنك الاستفادة من المقالات التالية فهي موجهة لمن هم في طور التعلم: بالتوفيق لك يا إبراهيم،
  13. أنشئ ال shorcode الخاص بك كما ذكرت لك سابقًا: function my_custom_link() { $id = ...; return '<meta http-equiv = "refresh" content = "0; url = https://www.simple.com/'. $id .'"/" />'; } add_shortcode('my_link', 'my_custom_link'); ولقيمة ال id يمكنك تنفيذ ال shortcode الخاص بالإضافة عن طريق التابع do_shortcode كالتالي: $id = do_shortcode('[test]'); وضمن نص المنشور أو الصفحة تضيف فقط ال shorcode الخاص بك دون الحاجة لاستخدام مكون HTML: [my_link]
  14. لا يمكن فعل ذلك من خلال مكون HTML، في حال تم إضافة هذا التطوير لاحقًا على ووردبرس يمكنك تنفيذه، في الوقت الحالي الميزة غير مدعومة ويمكن حل المشكلة عن طريق shortcode خاص يطبع هو محتوى HTML بشكل كامل
  15. هل تستخدم مكون HTML لإضافة الرابط، إذا كان الأمر كذلك لن يتم معالجة shortcode داخل شيفرة HTML وهذا خطأ من طرف ووردبرس كما ذكرت لك سابقًا، الحل يكون بإضافة ال shortcode فقط ولا يعيد رقم الحساب فقط، بل يطبع هو الرابط الذي تريده بالكامل،
  16. هل يمكنك توضيح كيف تحاول إضافة ال shorcode، وتحديد المكان هل ضمن نص المنشور، أم في widget خاصة، أم داخل قالب أو إضافة
  17. تواصلي مع مركز المساعدة فلديهم التفاصيل الدقيقة عن العملية بشكل كامل، واطرحي كل استفساراتك وسيتم مساعدتك، بالتوفيق والنجاح،
  18. يجب التقدم للامتحان أولًا والنجاح به للحصول على الشهادة، ويمكنك ذلك بعد إتمامك لأربعة مسارات ضمن الدورة وتطبيق المشاريع فيها ورفعها على حسابك في Github لتقديمها، بعد ذلك تتقدمين بطلب امتحان بالتواصل مع مركز المساعدة، ليتم تحديد موعد لك لاتمام الامتحان وبعد النجاح يمكنك الحصول على الشهادة، يمكنك القراءة أكثر عن الامتحان والحصول على الشهادة من قاعدة المعرفة، ولأي استفسار آخر يمكنك التواصل مع مركز المساعدة وسيتم مساعدتك، بالتوفيق لك
  19. المشكلة هي بطريقة إضافتك لل shortcode ضمن الصفحات، في حال كنت تضيفه في widget من نوع HTML لن يتم تبديله من قبل ووردبرس وهي مشكلة في ووردبرس نفسه، الحل الوحيد يكون بتوليد النتيجة كاملة ضمن ال shorcode وإضافته ضمن الصفحات بالطريقة الاعتيادية
  20. تأكد من التسجيل الصحيح لل shortcode أولًا ضمن الموقع لديك، وذلك عبر إضافة الشيفرة التالية إما ضمن إضافة مخصصة، أو ضمن ملف functions.php للقالب المفعل لديك: function get_custom_id() { return ...; } add_shortcode('test', 'get_custom_id'); ال shortcode لا تعمل ضمن widget إضافة HTML في ووردبرس، بدلًا من ذلك يمكنك تضمين الشيفرة كاملةً ضمن ال shortcode بحيث تعيد هي شيفرة HTML المطلوبة كالتالي: function my_custom_link() { $id = ...; return '<meta http-equiv = "refresh" content = "0; url = https://www.simple.com/'. $id .'"/" />'; } add_shortcode('my_link', 'my_custom_link');
  21. في تلك الحالة يجب تطوير إضافة خاصة للربط مع الواجهة البرمجية API لتلك الجهة، وحتمًا ستحتاج تلك الواجهة للتعامل معها إلى نوع من مفاتيح التوثيق (مثل المفتاح السري secret key وغيره)، لذا عادة الإضافات لبوابات الدفع الشائعة تتيح لك إدخال مفاتيح حسابك ضمن حقل نصي لتتمكن الإضافة من التواصل مع API باسم حسابك لدى طرف بوابة الدفع، يجب فهم طريقة عمل API للجهة التي تريد ربطها جيدًا، وتطور لها إضافة قادرة على التواصل معها وتوفير المعلومات التي تجلبها لإضافة WooCommerce كي يتم التكامل بشكل سليم، يمكنك الاستفادة من قراءة المقالات التالية:
  22. طبيعة العلاقة بين الجدولين التي تطلبها هي وجود عدة فحوصات لكل مريض، في هذه الحالة يجب إما أن يكون هناك حقل مفتاح ثانوي في جدول الفحوصات يشير إلى المريض صاحب ذلك الفحص، في تصميمك يمكنك استخدام الاستعلام الفرعي لجلب كل الفحوصات للمريض الحالي ضمن جدول الربط لديك: SELECT * FROM testt WHERE id IN ( SELECT * FROM result WHERE pid=$row["pid"] } المشكلة لديك في تصميم الجداول، يجب أولًا تحديد العلاقات بين المفاهيم ضمن المشروع (مريض - فحص - عيادة ...)، ثم على أساسها نصمم جداول تكون أسهل في الاستعلام، أنصحك بقراءة المقال المذكور مسبقًا والكتاب التالي:
  23. إذًا لا يوجد لديك ربط بين جدول الفحوصات وجدول المرضى، يجب أن يحوي جدول الفحوصات على حقل يمثل معرف المريض الذي يتبع له، مثلًا pid، ولجلب الفحوصات الخاصة بمريض معين يمكنك الاستعلام وفق شرط أن يكون pid في جدول الفحوصات يساوي معرف المريض الذي تحاول عرض فحوصاته: SELECT * FROM testt WHERE pid=$row["pid"] ^^^^^^^^^^^ معرف المريض
  24. هل بدلت استعلام جلب الفحوصات بالاستعلام الذي ذكرته لك قبلًا؟
  25. يرجى توضيح استفسارك أكثر، هل يمكنك توفير مثال على نتيجة خاطئة والنتيجة المرغوبة
×
×
  • أضف...