لوحة المتصدرين
المحتوى الأكثر حصولًا على سمعة جيدة
المحتوى الأعلى تقييمًا في 04/02/24 في كل الموقع
-
السلام عليكم، لقد أنهيت ستة مسارات من دورة علوم الحاسوب و لكن أريد أن أخوض الإمتحان في خمسة مسارات لكن المسار الخامس يفصل بينه و بين باقي المسارات مسار هل يمكنني تجاهل ذلك المسار و التقديم للإختبار بخمسة مسارات. كيف أعرف أنني جاهز للإختبار, وشكرا3 نقاط
-
ما الفرق بين ال Entity في قواعد البيانات و Object في لغات البرمجة ؟3 نقاط
-
مرحبا هل يمكنني تصميم ذكاء اصطناعي يتنبأ بالطقس لبعد سنتين بمعلومات اليوم وكيف يتم ذلك وشكرا لكم المشروع طرح علي من شركة ابحاث المناخ فأردت ان اخذ رأيكم يا اخوتي وشكرا1 نقطة
-
1 نقطة
-
لدي هذا المكون: <?php namespace App\Livewire; use Livewire\Component; use App\Models\Post; class PostsList extends Component { protected $listeners = ['toggleFollow' => '$refresh']; public function getPostsProperty() { $ids = auth()->user()->following()->wherePivot('confirmed', true)->get()->pluck('id'); return Post::whereIn('user_id', $ids)->latest()->get(); } public function render() { return view('livewire.posts-list'); } } ولدي posts-list.blade.php <div class="w-[30rem] mx-auto lg:w-[95rem]"> @forelse($this->posts as $post) <livewire:post :post="$post" :wire:key="'post_'.$post->id"/> @empty <div class="max-w-2xl gap-8 mx-auto dark:text-gray-100"> {{__('Start Following Your Friends and Enjoy.')}} </div> @endforelse </div> كيف اقوم بإضافة ميزة التحميل التلقائي للمنشورات؟ حاولت بحث ع يوتيوب ولكن ما استفدت ولا شيء.1 نقطة
-
لدي استعلام تالي لماذا يظهر نتيجة فارغة رغم كل جدول به بيانات ومربوطه صحيح SELECT s.Num_std ,s.Name_std ,s.Email_STD ,p.name_project,t.Name_teah,d.Name_dept from projects p INNER JOIN student s on p.Num_STD=s.Num_std INNER JOIN teachers t on s.id_teah=t.id_teah INNER JOIN departments d on t.id_dept=d.id_dept; انا اريد كم موضح في الصورة حقول تالية رقم قيد طالب اسم الطالب ايميل طالب اسم المشروع اسم المشرف اسم القسم1 نقطة
-
السلام عليكم هل اقدر اشوف الدوال الموجود في مكتبه او طاره عمل في لغه الباثيون علي سبيل المثال مكتبه زي numpy هل اقدر اشوف الدوال الموجود فيه كلها1 نقطة
-
من خلال مستودع المكتبة على GitHub ستجد الكود المصدري، ومثلاً numpy المستودع الخاص بها هو التالي: https://github.com/numpy/numpy إما إن كنت تقصد رؤية الدوال التي تستطيع استخدامها فهناك دالة dir المدمجة في Python وتعرض قائمة بجميع الأسماء المحددة في ملف تعريف أو وحدة. import numpy as np functions = dir(np) for function in functions: print(function) أو من خلال المستند الرسمي: https://numpy.org/doc/stable/reference/1 نقطة
-
السلام عليكم. في الكود التالي لم أعرف لماذا يقع تفعيل التحريك (animation) الكود الأول <div className={`w-20 bg-slate-50 flex flex-col absolute top-14 transition-all duration-500 ease-in-out`} style={{ right: dropdown ? "2px" : "-100%", }} > الكود الثاني <div className={`w-20 bg-slate-50 flex flex-col absolute top-14 transition-all duration-500 ease-in-out ${dropdown ? "right-2" : "right-[-100%]"}`} // style={{ // right: dropdown ? "2px" : "-100%", // }} > شكرا.1 نقطة
-
مرحبا محمود تأكد أن الأب الذى بداخله هذا الdiv عليه التموضع relative <div class="relative"></div> تأكد أيضا أن ال dropdown تتغير من true ل false والعكس1 نقطة
-
1 نقطة
-
هذا سؤال يراودني رغم امكانيات شركه حاسوب الكبيره ورغم نجاح مستقل وخمسات لكنني لا ارى ان لها تطبيقات جوال تسهل على المستقلين واصحاب المشاريع التعامل فيما بينهم لماذا ؟1 نقطة
-
الامر بسيط ويوجد عدة طرق ولكن الافضل هو . اولا انشاء متغير يحمل المنشورات التى تم تحميلها الى الان حيث لا نريد فى كل مرة يصل المستخدم الى اخر الصفحة وناتى بالمنشروات من جديد , ونعطى قيمة افتراضية لهذا المتغير بمصفوفة فارغة . public $postCotainer = []; وايضا نقوم بانشاء متغيرين اخرين احدهما يحمل القيمة الافتراضية لعدد المنشورات التى سيتم تحميلها فى بداية الصفحة او حتى عند التمرير لاسفل الصفحة . والاخر يحمل عدد المنشورات الذى تم عرضها الى الان . public $take = 5; public $skip = 0; والان نقوم بانشاء استماع الى حدث التمرير جديد وفى الدالة نقوم بزيادة عدد المنشورات التى عرضها . protected $listeners = ['scrollPosts'=>'getMorePosts']; public function getMorePosts() { $this->skip += $this->take; } هكذا كل مرة يتم التمرير لاسفل الصفحة نقوم بزيادة العدد الذى تم عرضه . والان فى الدالة getPostsProperty نضع هذا الكود. public function getPostsProperty() { $ids = auth()->user()->following()->wherePivot('confirmed', true)->get()->pluck('id'); $this->postCotainer = array_merge($this->postCotainer,Post::whereIn('user_id', $ids)->latest()->skip($this->skip)->take($this->take)->get()->all()); return $this->postCotainer; } لاحظ هنا اننا اولا استخدمنا دالة array_merge وذلك لدمج المنشورات التى تم تحميلها سابقا الى المنشورات الجديدة الذى سوف يتم تحميلها . ولاحظ اننا فى الاستعلام الخاص بال sql اضفنا داليتن الاولى هى skip اى اننا لا نريد ان ناتى بعدد معين بالمنشورات وهى المنشورات التى تم تحميلها بالفعل ولذلك نمرر لها المتغير skip الذى يحمل عدد المنشروات الذى تم تحميلها الى الان. والدالة take التى تسمح لنا باحضار عدد معين فقط من المنشورات ولذلك ارسلنا لها المتغير take الذى يحمل عدد المنشورات التى نريد عرضها . وبهذا نكون قد انتهينا من الكود الخلفى . ولكن ستجد مشكلة سوف تحدث فى الحدث الذى لديك toggleFollow فمثلا اذا قام المستخدم بالغاء متابعه او متابعه مستخدم جديد فان منشوراته التى تم تحميلها سابقا نريد ان نحذفها او عرضها . لذلك سنجعل عند استماع الى الحدث toggleFollow هو حذف جميع المنشورات التى تم تحميلها سابقا واعادة التحميل من جديد حتى لا تحدث تلك المشكلة.وهذا هو كود المكون كاملا بعد التعديل. <?php namespace App\Livewire; use Livewire\Component; use App\Models\Post; class PostsList extends Component { protected $listeners = ['toggleFollow' => 'resetPosts','scrollPosts'=>'getMorePosts']; public $take = 5; public $skip = 0; public $postCotainer = []; public function resetPosts() { $this->postCotainer = []; $this->take = 5; $this->skip = 0; } public function getPostsProperty() { $ids = auth()->user()->following()->wherePivot('confirmed', true)->get()->pluck('id'); $this->postCotainer = array_merge($this->postCotainer,Post::whereIn('user_id', $ids)->latest()->skip($this->skip)->take($this->take)->get()->all()); return $this->postCotainer; } public function getMorePosts() { $this->skip += $this->take; } public function render() { return view('livewire.posts-list'); } } اما فى الواجهة الامامية فسوف نضيف استماع الى حدث التمرير و التحقق من ان المستخدم قد قام بالتمرير الى اخر الصفحة . واذا كان قام بالتمرير الى اخر الصفحة نقوم بارسال الحدث scrollPosts الذى سوف يقوم باحضار المزيد من المنشورات وبذلك كلما قام بالتمرير ياتى بالمنشورات الجديد . <div class="w-[30rem] mx-auto lg:w-[95rem]"> @forelse($this->posts as $post) <livewire:post :post="$post" :wire:key="'post_'.$post->id" /> @empty <div class="max-w-2xl gap-8 mx-auto dark:text-gray-100"> {{ __('Start Following Your Friends and Enjoy.') }} </div> @endforelse </div> @script <script> window.onscroll = function(ev) { if ((window.innerHeight + Math.round(window.scrollY)) >= document.body.offsetHeight) { $wire.dispatch('scrollPosts'); } }; </script> @endscript وهكذا قد انتهينا من جميع الاكود ويمكنك استعمالها وستعمل معك . ويمكنك تغير القيمة الافتراضية للمتغير take على حسب عدد المنشورات التى تريدها حيث انا اعطيته قيمة ابتدائية ب 51 نقطة
-
وعليكم السلام محمود الكود الأول والثانى يؤديان نفس الوظيفة الأولى مكتوبة بالكامل داخل الصنف مع استخدام السلاسل النموذجية `` لإضافة متغيرات داخل السلسلة النصية الثانية استخدمنا مزيج من الصنف والتنسيق . وهى عندما تكون القيمة dropdown صحيحة يتم تموضع هذا العنصر 2px من ناحية اليمين بالنسبة للعنصر الأب الذى بداخله هذا العنصر وعندما تكون تكون القيمة dropdown خاطئة يتم تموضع هذا العنصر -100% من ناحية اليمين بالنسبة للعنصر الأب الذى بداخله هذا العنصر ويظهرون على أنهم تحريك بسبب 1- transition-all : يضيف تأثير الانتقال على جيمع الخصائص 2- duration-500 : تقوم بتحديد مدة الحركة 500ms 3- ease-in-out : تقوم بتحديد كيفية الإنتقال من الحالة الأولية إلى الحالة النهائية بالتوفيق..1 نقطة
-
حاولي الخطوات التالية: الذهاب لمجلد xampp، والدخول لمجلد mysql C:\xampp\mysql يوجد مجلد اسمه data أعيدي تسميته إلى data_old إنشاء مجلد جديد باسم data نسخ محتويات مجلدbackup (إن وجد) إلى المجلد data (المنشئ في الخطوة السابقة) نسخ واستبدال كل محتويات المجلد data_old إلى المجلد data ما عدا التالي: mysql performance_schema phpmyadmin تشغيل خدمة MySQL من XAMPP مجددًا1 نقطة