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

محمد عاطف17

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

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

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

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

    61

كل منشورات العضو محمد عاطف17

  1. لا يجب ذلك بل يجب فتحها مرة واحدة في بداية الملف . اي يجب فتحها قبل استخدام _SESSION$ والا ستكون فارغة ولن يعمل الكود
  2. هل يمكنك توضيح الكود الذي قمت بكتابته ؟ لقد قمت بتجربة الكود الذي أرفقته لك وهو يقوم مرة واحدة بإعادة التحميل فقط.
  3. لم أفهم ما الفائدة من إعادة تحميل الصفحة لجلب البيانات من قاعدة البيانات يمكنك مباشرة جلبها دون إعادة تحميل الصفحة. أم تقصد أنك تريد جلب بيانات ووضعها في قاعدة بيانات أخرى ؟ عموما يمكنك ذلك من خلال وضع قيمة في ال session توضح هل تم تحميل الصفحة سابقا أم لا : <?php session_start(); // التحقق إذا كانت الصفحة قد تم تحميلها من قبل if (!isset($_SESSION['page_loaded'])) { // إذا كانت المرة الأولى، قم بتخزين الحالة في الجلسة $_SESSION['page_loaded'] = true; // يمكنك تنفيذ ما تريده هنا قبل إعادة التحميل header("Refresh:0"); } else { unset($_SESSION['page_loaded']); } هنا قمنا ببدا ال session من خلال session_start بعد ذلك نتحقق من وجود page_loaded في ال _SESSION إذا لم توجد إذا لم يتم تحميل الصفحة من قبل ويمكنك بداخل الشرط وضع أن الصفحة قد تم تحميلها و إعادة التحميل من خلال header("Refresh:0"); وهكذا يمكنك وضع ما تريد تنفيذه قبل إعادة التحميل قبل سطر header("Refresh:0");
  4. ستجد أسفل فيديو الدرس صندوق للتعليقات كما هنا يرجى طرح سؤالك أسفل الدرس وليس هنا حيث هنا قسم الأسئلة العامة ولا نقوم بإجابة الأسئلة الخاصة بمحتوى الدورة أو الدرس، وذلك لمعرفة الدرس الذي توجد به مشكلتك و لمساعدتك بشكل أفضل.
  5. هل تم حفظ الملف بشكل صحيح لديك قبل إغلاقه ؟ او هل حدثت مشكلة لديك في الملف أثناء فتحه ؟ حيث لاحظ أنه يتم فتح الملف كأنه ملف json . حيث أن التمثيل الداخلي لتنسيق .ipynb هو ملف json ولهذا فهو يتم حفظه كهيكل بيانات JSON ولذلك إذا حدثت مشكلة أثناء الحفظ فإن الملف سيكون تالف ولهذا لن يعرف Notebook كيف يقوم بعرضه . أو من الممكن أنك تقوم بفتحه بطريقة خاطئة حيث يجب فتحه من خلال عنوان الخادم وليس كأنه ملف نصي . حيث يجب عليك في موجه الأوامر الخاص ب anaconda أن تقوم بتشغيله من خلال الأمر : jupyter notebook بعد ذلك يمكنك تصفح الملفات من خلال الرابط التالي : http://localhost:8888/tree
  6. وعليكم السلام ورحمة الله وبركاته. لا يمكنك ربط ملفين HTML ببعضهم البعض حيث HTML لا توفر تلك الميزة حاليا حيث لا يمكنك إستخدام include كما تفعل اللغات الأخرى والتي تقوم بتضمين ملفات اخري في الملف الحالي . ولكن يمكنك توفير ذلك من خلال كود جافاسكريبت : <html> <head> <script src="jquery.js"></script> <script> $(function(){ $("#includedContent").load("mobile.html"); }); </script> </head> <body> <div id="includedContent"></div> </body> </html> لاحظ أننا هنا إستعملنا مكتبة JQuery لتنفيذ ذلك . حيث لاحظ أننا أنشأنا عنصر div وله id معين وبهذا ال id نستطيع تحميل الملف ووضع محتويات الملف به . ولكن لاحظ أن تلك الطريقة ليست جيدة أبدا حيث هكذا الموقع الخاص بك لن يكون متوافق مع قواعد التصميم المتجاوب Responsive design حيث يجب أن تقوم بتحقيق ذلك من خلال التنسيقات CSS حيث يمكنك CSS من التلاعب بالعنصر في الشاشات المختلفة حيث يمكنك جعل العنصر صغيرا مثلا في الشاشات الصغيرة وفي الشاشات الكبيرة تستطيع تكبير حجمه كما تريد ويمكنك تحقيق ذلك من خلال العديد من الطرق وأهمها طرق Media Query . ويمكنك قراءة الدروس والمقالات التالية لتستطيع تحقيق ذلك وتعرف كيف تقوم بتطبيقها لديك في الكود :
  7. االمشكلة ليست في الأكواد لديك . غالبا المشكلة لديك في قاعدة البيانات يبدوا أنك قد قمت بتنفيذ أمر البزر seed مرة أخرى ولذلك قام بوضع البيانات مرتين في قاعدة البيانات . تأكد أولا من أن قاعدة البيانات لديك المنتجات ليست مكررة لديك وإذا أردت يمكنك حذف قاعدة البيانات وإعادة إنشاءها مرة أخرى من خلال الأمر : php artisan migrate:fresh --seed ولكن هذا الأمر سيحذف جميع البيانات الحالية في قاعدة البيانات لذلك تأكد من أنك لا تحتاجها قبل تنفيذ الأمر السابق. وقد لاحظت أنك تستعمل distinct لمحاولة عدم تكرار المنتجات . ولكن لاحظ أن المنتجات ال id الخاص بها لا يتكرر بل الذي يتكرر هو الوصف وأسماء المنتجات ولكن ال ids مختلفة لهذا يتم إعتبارها منتجات مختلفة عن بعضها البعض.
  8. وعليكم السلام ورحمة الله وبركاته. يجب عليكي أولا معرفة الفرق بين مطور الواجهة الأمامية Front-End ومطور الواجهة الخلفية Back-end . حيث الواجهة الأمامية هو الجزء من موقع الويب أو التطبيق الذي يراه المستخدم، ويتضمن HTML وCSS وJavaScript، والتي يتم استخدامها لإنشاء الواجهة الرسومية للموقع أو التطبيق. أى شكل التطبيق الخارجي . أما الواجهة الخلفية أو Back-End تعني الجزء من موقع الويب أو التطبيق الذي لا يراه المستخدم، ويشمل ذلك الخوادم والبيانات والبرامج التي تعالج الطلبات وترسل ردودًا للمستخدمين. وإليكي الإجابات التالية لتتعرفي أكثر على الفرق بينهما : وبما أنكي تريدين دمج نماذج الذكاء الإصطناعي مع المواقع فهنا أنتي يجب عليكي أن تتخصي أكثر في الواجهات الخلفية والخوادم وليس الأمامية . وحيث أن دورة "تطوير واجهات المستخدم" هي مخصصة للأشخاص الذين يريدون أن يصبحوا مطورين واجهات أمامية لمواقع ثابته . فهنا لن تفيدكِ كثيرا لأنكِ فقط ستتعلمين كيفية إنشاء مواقع ثابته أى فقط هيكل الموقع وتنسيقاته ولن تستطيعين دمج تقنيات الذكاء الإصطناعي فيها. والأفضل لكي هو "دورة تطوير التطبيقات باستخدام لغة Python" حيث ستتعلمين بايثون والذي يتم إستخدامها في الذكاء الإصطناعي وهي دورة تعتبر back-end ويوجد بها مسار لكيفية دمج تقنيات الذكاء الإصطناعي مع تطبيقات ومواقع بايثون التي أنشاتيها . وستتعلمين كيفية إنشاء Chat bot وغيرها . لهذا أنصحكي بالبحث عن دورة back end وليس front end . وإذا لم تريدي تعلم بايثون لتطوير الواجهات الخلفية توجد عدة دورات أخرى هنا في الأكاديمية تؤهلكِ لذلك بعدة لغات ويمكنكِ قراءة الإجابة التالية لشرح تفاصيل الدورات هنا في الأكاديمية :
  9. وعليكم السلام ورحمة الله وبركاته. إن ال MinMaxScaler يستخدم لتغيير نطاق البيانات بحيث تكون ضمن نطاق محدد غالبا ما يكون بين 0 و 1. حيث يقوم بتحويل البيانات بحيث تكون القيمة الدنيا 0 والقيمة العليا 1. يتم ذلك باستخدام القانون التالي: Xscaled = (X − Xmin) / (Xmax − Xmin) وهو جيد عندما تكون البيانات في نطاقات مختلفة وتحتاج إلى تطبيع البيانات وتريد أن تكون جميع الميزات (features) على نفس النطاق خصوصا في خوارزميات التعلم الآلي و التي تعتمد على المسافات مثل K-Nearest Neighbors (KNN) أو الشبكات العصبية. أما ال StandardScaler فهو يستخدم لتوحيد البيانات بحيث يكون لها متوسط (mean) يساوي 0 وانحراف معياري (standard deviation) يساوي 1. ويتم ذلك باستخدام القانون التالي: Xscaled = (X − μ) / σ حيث μ هو المتوسط وσ هو الانحراف المعياري. وهو جيد عندما عندما تكون البيانات لا تتبع توزيع معين (مثل توزيع Gaussian) و تريد أن تكون البيانات موزعة بشكل طبيعي بمتوسط 0 وانحراف معياري 1 وهو مناسبة لمعظم خوارزميات التعلم الآلي مثل الانحدار الخطي (Linear Regression) و (SVM). أما ال RandomOverSampler فهو يستخدم لمعالجة مشكلة عدم التوازن في الفئات (Imbalanced Classes) في بيانات التصنيف حيث يقوم بإنشاء نسخ عشوائية من العينات في الفئة الأقل تمثيلا في البيانات و يزيد حجمها حتى تصبح متوازنة مع الفئات الأخرى. وهو جيد عندما تكون إحدى الفئات لديك في مجموعة البيانات قليلة مقارنة بالفئات الأخرى مما قد يسبب في تحيز النموذج نحو الفئة الأكثر. تلخيصا لما سبق فإن MinMaxScaler و StandardScaler نستخدمهما لتغيير نطاق أو توزيع البيانات لكنها تختلف في الطريقة التي تقوم بذلك بها وRandomOverSampler يستخدم لمعالجة مشكلة عدم التوازن في الفئات وليس لتغيير نطاق البيانات.
  10. ستجد أسفل فيديو الدرس صندوق للتعليقات كما هنا يرجى طرح سؤالك أسفل الدرس وليس هنا حيث هنا قسم الأسئلة العامة ولا نقوم بإجابة الأسئلة الخاصة بمحتوى الدورة أو الدرس، وذلك لمعرفة الدرس الذي توجد به مشكلتك و لمساعدتك بشكل أفضل.
  11. وعليكم السلام ورحمة الله وبركاته. كل عام وأنت بخير وتقبل الله منا ومنكم صالح الأعمال. إن هي Python scripts ملفات نصية تحتوي على كود بايثون يتم تنفيذها بشكل مرتب من البداية إلى النهاية وتكون بإمتداد py. و يتم تشغيلها عن طريق مترجم بايثون (Python Interpreter) وهي تستخدم لكتابة وتطوير تطبيقات كاملة أو تنفيذ مهام أو أتمتة المهام . وهي ليست تفاعلية حيث يتم تنفيذ الكود ككل ولا يمكنك تعديله أثناء التشغيل. و يمكنك كتابة أو تعديل تلك الملفات باستخدام أي محرر نصوص أو IDE . أما Python notebooks فهي ملف أو وثيقة تفاعلية تحتوي على أجزاء من أكواد بايثون أو نصوص توضيحية (Markdown) وهي تكون بإمتداد ipynb. ويتم تشغيلها في بيئة تفاعلية مثل Jupyter Notebook أو Google Colab. يمكن تنفيذ الخلايا بشكل منفصل.و يتم إستخدمها غالبا وبكثيرة في تحليل البيانات أو الوثائق أو إذا أردت عرض كل جزء من الكود بشكل منفصل. وهي بيئة تفاعلية تمكنك بسهولة من تعديل وتنفيذ الخلايا بشكل منفصل وعدم الإلتزام بترتيب معين للكود حيث يمكنك تنفيذ خلايا وخلايا أخرى لا تقوم بتنفيذها مما يسهل عليك تنفيذ الأمور أو إنشاء وثيقة (docs) مع عرض نتائج تنفيذ الأكواد بشكل منفصل. إذا إذا أردت كتابة script ما أو تنفيذ تطبيق كبير يعمل ككل فيمكنك إستخدا Python scripts . أما إذا كنت تعمل على مهام مثل تحليل البيانات آو أردت بناء ملف عرض توضيحي أو وثيقة والكود لا يعتمد على تشغيله مرة واحد ككل فيمكنك إستخدام Python notebooks
  12. يرجى إتباع الخطوات في الصورة السابقة وحذف symlink من ال disabled functions ومن ثم حفظ التعديلات . وبعد ذلك قم بالمحاولة مرة أخرى. وأيضا يرجى محاولة الطريقة السابقة التي وضحتها لك من خلال الكود الموضوع بداخل ملف web.php أو يمكنك محاولة تنفيذ الأمر يدويا بعد تعديل التالي : ln -s /home/u778939481/domains/slategray-magpie-936259.hostingersite.com/public_html/storage/app/public /home/u778939481/domains/slategray-magpie-936259.hostingersite.com/public_html/public
  13. لاحظ في سطر رقم 3 لم تضع الفاصلة في نهاية السطر ولهذا يحدث هذا الخطأ لأن الملف أصبح لا يمثل كود JSON صحيح. لذلك يجب وضع علامة , في نهاية سطر 3 كما في جميع الأسطر الأخرى.
  14. المشكلة غير واضحة . هل قمت بتنفيذ أمر php artisan storage:link من خلال ال SSH وتم بنجاح أم لا ؟ وأيضا حينما قمت بتنفيذ الأمر يدويا هل تقصد بأن مجلد public ظهر بداخل storage أم العكس وهو storage ظهر بداخل public ؟ إذا كان مجلد public هو ما ظهر بداخل storage فيبدوا أنك قد قمت بعكس الأمر فيمكنك محاولة تبديل المسارين ومن المفترض أن يعمل معك. ولكن الافضل لك هو إستعمال SSH وتنفيذ أمر php artisan storage:link مباشرة من خلاله. ولكن إذا لم يكن لديك وصول إليه يمكنك إنشاء مسار يقوم بتنفيذ الأمر في ملف web ومن ثم حذف هذا المسار : use Illuminate\Support\Facades\Artisan; Route::get('/storage-link',function(){ Artisan::call('storage:link'); }); الآن يمكنك الذهاب إلى عنوان /storage-link بعد الدومين الخاص بك وسيتم تنفيذ الأمر تلقائيا وعمل link لل storage لديك . بعد ذلك يرجى حذف الكود السابق حتى لا تحدث مشاكل مستقبلا ولأنك لم تعد بحاجة له.
  15. هذا الأمر يعتمد على عدة أمور بما فيها احتياجاتك التي تريدها في التطبيق و خبرتك البرمجية واللغة التي تعمل عليها . أولا Electron: يتم إستخدام لغات مثل JavaScript و HTML و CSS. حيث يُستخدم لبناء تطبيقات سطح المكتب باستخدام تقنيات الويب. مميزاته : إذا كنت على علم بالفعل ب JavaScript و HTML وCSS فإن Electron سيكون سهل بالنسبة لك في تعلمه سريعا. يمكنك إستخدام الكثير من المكتبات المتاحة حيث يعمل على بيئة تطوير node مما يعطيك الكثير من الخيارات للمكاتب التي تساعدك. يمكنك بناء تطبيقات تعمل على Windows و macOS و Linux بنفس الكود. عيوبه : Electron معروف باستهلاك الذاكرة والموارد بشكل كبير لأنه يعمل بشكل رئيسي على محرك Chromium ومكتبات Node.js والعديد من الأسباب الأخرى التطبيقات يكون حجمها كبير إلى حد ما. ثانيا PyQt5: يعمل على لغة بايثون Python حيث هي مكتبة تستخدم لبناء تطبيقات سطح المكتب باستخدام واجهات المستخدم الرسومية GUI. مميزاته : إذا كنت تعرف Python فإنه يمكنك التعامل مع PyQt5 بسهولة. التطبيقات تكون أخف وزنا وحجما وأسرع في الأداء مقارنة بـ Electron. يوفر لك تحكم كبير في واجهة المستخدم والعناصر والتطبيق بشكل عام. يمكنك بناء تطبيقات تعمل على Windows و macOS و Linux أيضا. عيوبه : من الممكن أن تجدصعوبة إذا لم تكن لديك معرفة أو تعاملت مع واجهات المستخدم الرسومية قبل ذلك. لا يحتوي على الموارد والمكتبات بكثيرة كما في Electron. ولهذا الخيار يعتمد على اللغة التي لديك حاليا أو التي تفضل العمل بها . فإذا كان لديك خبرة جيدة في JavaScript و HTML و CSS و تريد بناء تطبيق يعتمد على تقنيات الويب ويشبهها وأيضا تحتاج إلى إستخدام مكتبات لمساعدتك ولا توجد لديك مشكلة في استهلاك الموارد وحجم التطبيق فحينها Electron أفضل لك بكثير. أما إذا كان لديك خبرة في Python و تريد بناء تطبيق خفيف و سريع و أيضا تحتاج إلى تحكم أكبر في واجهة المستخدم دون الحاجة لمعرفة مسبقة بالتصميم أو التنسيق و تفضل استخدام لغة برمجة واحدة وهي بايثون Python في التطبيق كاملا فحينها الأفضل لك هو PyQt5 . ويمكنك قراءة الإجابات التالية أيضا :
  16. مرحبا . نعتذر عن ذلك . من الممكن ان يتأخر ظهور قسم دوراتي قليلا بعد الدفع لهذا لا يجب القلق . يرجي التحدث مع مركز المساعدة من خلال الرابط التالي وسيتم مساعدتك وحل المشكلة ان شاء الله : https://support.academy.hsoub.com/conversations من الممكن ان يتاخر مركز المساعدة في الرد قليلا حيث يوجد حاليا ضغط عليه لهذا يرجي الانتظار قليلا لحين الرد عليك.
  17. لاحظ أن البرنامج لا يغلق من تلقاء نفسه ويقوم بإكمال الكود دائما ما لم يحدث خطأ أو يتم إيقافه من خلال دالة exit . لاحظ أنه ستواجهك مشكلة في سطر 19 لأنك تحاول إستخدام المتغير computer_result ولكن هذا المتغير تم تعريفه في جزء جملة if أى أنه إذا لم يتحقق الشرط وتم تنفيذ else فهنا ستحدث مشكلة لأن المتغير لم يتم تعريفه. ولهذا يجب إغلاق الكود في جزء else من خلال exit() هكذا : import random choose = input( "welcome to the coin guessing game!\nchoose a method to toss the coin\n1.using random.random()\n2.using random.randint()\nenter your choice (1 or 2):\n" ) if choose == "1": if random.random() >= 0.5: computer_result = "heads" else: computer_result = "tails" elif choose == "2": if random.randint(0, 1) == 0: computer_result = "heads" else: computer_result = "tails" else: print("invalid choice. Please select either 1 or 2") exit() user_choice = input("enter your guess (heads or tails):\n") if user_choice.lower() == computer_result.lower(): print("congratulations! you won") print(f"the computer's coin toss result was: {computer_result}") else: print("sorry, you lost") print(f"the computer's coin toss result was: {computer_result}")
  18. لا مشكلة يمكنك إتباع الخطوات التي ذكرها المدرب مصطفي للإتصال من الجهاز الأخر وكتابة إسم المستخدم وكلمة المرور التي أنشأتها . أما إذا أردت البدء من جديد فيمكنك إستخدام الأمر التالي لحذف المستخدم الذي أنشأته من خلال الجهاز الخاص به : sudo smbpasswd -x kemo ويمكنك تغير kemo إلى إسم المستخدم على الجهاز الأخر.
  19. وعليكم السلام ورحمة الله وبركاته. إن ال GridSearch هو أسلوب في تعلم الآلة يتم إستخدامه للبحث عن أفضل مجموعة من المعاملات (hyperparameters) لنموذج معين. فبدلا من تجربة القيم يدويا يقوم GridSearch بالبحث بشكل تلقائي عن جميع التركيبات الممكنة للمعاملات من خلال تحديد نطاقات متعددة لكل معلمة. حيث يتم تحديد مجموعة من القيم الممكنة لكل هايبربارامتر. وم ثم إنشاء شبكة من التركيبات الممكنة للهايبربارامترات المحددة. وبعد ذلك يتم تدريب النموذج لكل تركيبة من التركيبات وتقييم أدائه باستخدام تقييم معين (مثل دقة التصنيف أو خطأ التوقع). وأخيرا يتم اختيار التركيبة التي تعطي أفضل أداء للنموذج. تلخيصا لما سبق فإن بحث مصفوفة المعاملات GridSearch يستخدم لاختبار عدد من المعاملات أو إعدادات النماذج المختلفة دفعة واحدة والعثور على أفضل مجموعة معاملات تحقق أفضل أداء . ولكن تستهلك هذه الطريقة وقتا وموارد حاسوبية كبيرة خاصة إذا كانت المعاملات كثيرة جدا
  20. هذه المشكلة غالبا بسبب أنه لا يوجد مستخدم koko لديك على النظام بالفعل . حيث تتطلب smbpasswd أن يكون المستخدم موجودا لديك قبل ذلك. لهذا يجب عليك أولا التحقق من وجود المستخدم من خلال الأمر التالي : id koko إذا لم يكن المستخدم موجود يرجى تنفيذ الأمر التالي لإنشاءه : sudo useradd koko بعد ذلك إضافة باسورد لهذا المستخدم : sudo passwd koko الآن يمكنك إستخدام smbpasswd : sudo smbpasswd -a koko وكتابة كلمة مرور جديدة وتكرارها مرة أخرى . ومن ثم تنفيذ الأمر التالي : sudo systemctl restart smbd
  21. نعم بالطبع يوجد فرق بين حقوق المستأجر و الشخص المستفيد من العقار وهذا يعتمد على طبيعة العلاقة القانونية بين كل منهما وبين مالك العقار وهذا يختلف من دولة إلى أخرى حسب القانون. المستأجر : هو الشخص الذي يحصل على حق استخدام العقار لفترة محددة بموجب عقد إيجار مع المالك المباشر للعقار.وحقوقه هي : حق الاستخدام: يحق للمستأجر استخدام العقار وفق الشروط المتفق عليها في عقد الإيجار. حق الحماية من الإخلاء: لا يمكن للمالك إخلاء المستأجر قبل إنتهاء المدرة في العقد وذلك وفقا للشروط القانونية أو التي تم الإتفاق عليها في العقد. حق الصيانة: للمستأجر الحق في طلب صيانة العقار من المالك إذا كانت هناك مشاكل تؤثر على استخدامه وليس للمستأجر سبب أو دخل بها. حق التجديد: من الممكن وفي بعض الحالات يكون للمستأجر الحق في تجديد عقد الإيجار بعد انتهاء المدة المذكورة في العقد مع زيادة نسبة الإيجار المتفق عليها سنويا سواء في القانون أو في العقد. المستفيد : هو الشخص الذي يحصل على منفعة من العقار دون أن يكون بالضرورة طرف مباشر في عقد إيجار. فقد يكون المستفيد مستخدم للعقار بموجب ترتيب خاص، مثل الإعارة أو الحقوق العرفية مثل سكن الزوجة والأولاد بدلا من الزوج أو أى شخص أخر من طرف المستأجر مثل الميراث وغيرها وحقوقه هي: حق الاستخدام: للمستفيد حق استخدام العقار ولكن هذا الحق غالبا ما يكون محدود ولا يتمتع بنفس القوانين التي يتمتع بها المستأجر. لا يوجد عقد إيجار رسمي بين المستفيد ومالك العقار مما يعني أن حقوق المستفيد ليست واضحة لأنه لم يقم بالإيجار أو عقد إيجار ملزم مع المالك ولهذا باقي الحقوق تعتمد على العلاقة بين المستفيد والشخص المؤجر.
  22. دورة علوم الحاسوب توفر لك معلومات مكثفة حول مختلف مفاهيم لغات وتقنيات البرمجةو هي أساسية لزيادة معلوماتك حول مجال التقنية بشكل عام. و بانتهائك منها سيكون لديك خبرة جيّدة بدءً من الأساسيات والأفكار والمناهج النظرية مثل هندسة البرمجيات والبرمجة كائنية التوجه إلى التعامل مع أنظمة التشغيل ولغات البرمجة التي تم التطرق لها من خلال الأمثلة العملية في الدروس، وأيضاً سيكون لديك معرفة شاملة حول قواعد البيانات وطرق التعامل مع النوعين العلائقي وغير العلائقي. وفيها أيضاً مسار مخصص للدخول إلى عالم الويب والتعرّف على آلية عمل مطوري الويب في حال أحببت الانتقال إلى مجالات تطوير الويب لاحقاً لهذا إذا أردت التخصص في الواجهة الخلفية أو الأمامية فهذا المسار مهم جدا. ولذلك فتلك الدورة مهمة للتأسيس عليها وفهم أساسيات الحسوب و التعامل مع الخوادم والأنظمة وتعلم الخوارزميات وهياكل البيانات. أما بخصوص العمل فيمكنك التحدث بشكل أحسن مع مركز المساعدة سيساعدونك بخصوص هذا الامر. ويمكنك قراءة الإجابات التالية لمزيد من التفاصيل حول الدورة :
  23. يرجى مستقبلا حين رفع المشروع أن يتم رفع مجلد المشروع فقط المراد الإستفسار عنه وعدم رفع مجلدات أخرى معه وذلك حتى لا يكون حجم الملف كبيرا وأيضا حتى نستطيع مساعدتك بشكل أفضل. أولا يوجد لديك الكثير من الأخطاء في المشروع وخصوصا في التعامل مع livewire لذلك أنصحك بمذاكرة livewire أولا قبل التعامل معه حتى تستطيع بناء المشروع بشكل وهيكل جيد . حيث حاليا لا يفيدك livewire بأى شئ لأنك تستعمله بشكل خاطئ وغير صحيح. ثانيا يجب عليك حذف جميع التي تستخدم فيها @livewireScripts ويجب أن تتركها فقط في ال layout الرئيسي لأن ذلك يسبب تعارضات كثيرة لديك. أما بخصوص المشكلة فهي بسبب أنك تستخدم ملفات blade عادية وتقوم بإستدعائها من خلال @include وتريد أن تستدعي بها خصائص livewire مثل wire:click وغيرها وهذا لن يعمل حيث تعمل تلك الخصائص فقط في مكونات livewire . لذلك يجب عليك إستخدام مكون product-filter لأنه هو المكون livewire الوحيد لديك والذي توجد به الدالة setCategory . وأيضا يجب نقل ال filter و ال catergoy و ال product بداخل هذا المكون. لذلك يرجى في الملفات التالية resources\views\gallery.blade.php و resources\views\livewire\product-filter.blade.php تعديلهم ليتناسبوا مع livewire وإستدعاء المكونات بشكل صحيح. لقد قمت بإرفاق الملف لك بعد تعديلهم وإستخدام المكونات الصحيحة والآن كل شئ سيعمل معك. gallery.blade.php product-filter.blade.php
  24. وعليكم السلام ورحمة الله وبركاته. ينبغي عليك أن يكون لديك معرفة في طريقة التعامل وكيفية إستخدام إستعلامات SQL المسؤولة عن التعامل مع البيانات وإستخراجها وأيضا كيفية البحث والترشيح في تلك البيانات . وأرشح لك المقالين التاليين لتتعلم كيف تتعامل مع البيانات و إرجاعها بالطريقة التي تريدها وأيضا كيف تقوم بالبحث بداخل تلك البيانات : ولنفرض مثلا أن الجدول لديك يحتوي التالي : student_id: معرّف الطالب student_name: اسم الطالب department: التخصص فمثلا لو أردت معرفة عدد الطلاب في كل تخصص أو قسم يمكنك إستعمال الإستعلام التالي : SELECT department, COUNT(*) AS total_students FROM students GROUP BY department ORDER BY total_students DESC; لو أردت مثلا إحضار الطلاب في قسم أو تخصص معين يمكنك إستخدام الإستعلام التالي : SELECT student_name FROM students WHERE department = 'Computer'; وهكذا يمكنك بناء أى إستعلام تريده بناء على هيكل الجدول لديك وما هي التقارير التي تريد إنشاءها . أما إذا كنت تقصد عرضها أيضا في صفحة الموقع كرسومات بيانية فأنت ستحتاج مكتبة java script خاصة بعرض التقارير ويمكنك قراءة المقال التالي لأشهر المكتبات الخاصة بذلك وأنصحك بمكتبة charts.js فهي ممتازة في هذا الجزء :
  25. يفضل دائما إتباع ترتيب المسارات الموجود في الدورة حيث تم تصميم الدورات جميعها بترتيب مدروس ووضع هذا الترتيب لتوفير مسار تعليمي متدرج ومناسب للمبتدئين . وأيضا تهدف الأكاديمية إلى الشرح بشكل تصاعدي لضمان فهم الأساسيات قبل التعمق في المواضيع المتقدمة. وما تقوله صحيح فيفضل دراسة تحليل البيانات (Data Analysis) قبل البدء في مسارات تعلم الآلة (Machine Learning). حيث تحليل البيانات يشمل العديد من الأساسيات التي تعتبر ضرورية لفهم كيفية التعامل مع البيانات بشكل صحيح وهي خطوة أساسية في تعلم الآلة حيث سيجب عليك تنظيف البيانات وتجهيزها لتستطيع العمل عليها. وستلاحظ بالفعل أن المسارات الخاصة بتحليل البيانات قبل مسارات تعلم الآلة . ولكن في مسار "النماذج النصية الكبيرة LLMs" هنا لن يتم التطرق بشكل كبير في أدوات تحليل البيانات حيث سيتم توفير البيانات التي ستحتاجها في المرفقات الخاصة بالدرس ولن تتعامل معها بشكل كبير وأيضا ستتعامل مع نماذج موجودة مسبقا ولكنك ستقوم بتخصيصها بناء على الوظيفية التي تريدها منها لهذا لا مشكلة إن تم وضعها قبل مسارات تحليل البيانات. ولكن بالطبع تستطيع لك فيمكنك أولا مذاكرة المسارين "التعامل مع البيانات" و "تحليل البيانات Data Analysis" قبل البدء في مسار " "النماذج النصية الكبيرة LLMs""
×
×
  • أضف...