-
المساهمات
3124 -
تاريخ الانضمام
-
تاريخ آخر زيارة
-
عدد الأيام التي تصدر بها
29
نوع المحتوى
ريادة الأعمال
البرمجة
التصميم
DevOps
التسويق والمبيعات
العمل الحر
البرامج والتطبيقات
آخر التحديثات
قصص نجاح
أسئلة وأجوبة
كتب
دورات
كل منشورات العضو محمد عاطف17
-
نعم لا مشكلة في وضعهم بداخل div ولكن يفضل إستخدام class ووضعه في جميع عناصر ال select حيث هذا أكثر تحديدا من وضعهم جميعا بداخل div . ولا كثرة ال select لا تؤثر على الموقع ما يؤثر على الموقع هو أكواد جافا سكريبت إذا كانت كثيرة وتقوم بإمور معقدة فستجد أن الموقع أصبح بطيئا و أيضا الذى يؤثر على الموقع هو كثرة ال nodes أى توجد أبناء كثيرة داخل بعضها البعض أى تخيل معي لو 1000 عنصر div بجوار بعضهم لن يؤثروا على الصفحة ولكن لو كانو بداخل بعض ستجد أن الصفحة أصبحت بطيئة وثقيله و لكن 8 select ليست بالشئ الكبير فلا تقلق . أما بالنسبة لسؤال الثاني فإذا كنت تقصد أن الأكواد ليست مرتبة أى منسقة بداخل الملف فلا مشكلة في ذلك فالتنسيق ليس مهما في تنفيذ الكود المهم هو ترتيب الأكواد وتنظيمها فقط ولكن يفضل تنسيق الأكواد لسهولة القراءة و سهولة تصحيح المشاكل إن وجدت. والإستضافة ستكون مثل الخادم المحلي لديك تمام بل وممكن أفضل منه لذلك لا تقلق من تلك الناحية
- 12 اجابة
-
- 1
-
أولا يجب عليك إختيار لغة مناسبة لمشروعك للـعمل عليها ك Back-end مثل: Node.js مع Express لـ JavaScript، أو Django/Flask لـ Python، أو Spring Boot لـ Java أو php مع laravel . ثانيا قم بإعداد المشروع بالتقنية واللغة التي اخترتهاو قم بتهيئته . ثالثا قم بإعداد قاعدة البيانات إن كان التطبيق يعتمد على حفظ وإسترجاع البيانات. رابعا قم بإنشاء ال API Endpoints لتمكين التواصل بين الـ front-end والـ back-end .يمكنك استخدام RESTful APIs . إذا كانت تطبيقك يتطلب قاعدة بيانات، قم بإعداد قاعدة بيانات وربطها مع تطبيقك الـ back-end. وأخيرا تكامل وترابط الـ Back-end مع الـ Front-end بعد الإنتهاء من ال backend سيتوجب عليط في الـ front-end بإرسال الطلبات إلي الـ API endpoints الذين سترتبط معهم لإحضار البيانات من الـ back-end وإرسال البيانات له. أيضا إذا كنت فقط قد قمت بإنشاء ال front-end بإستخدام HTML و css فقط إذا ستجد صعوبة في الربط حيث ستقوم أنت بإنشاء كل شئ من حيث إرسال الطلبات و إنشاء العناصر وإظهار البيانات لذلك يفضل إستخدام إطار عمل مناسب مثل react أو angular
-
percentages = [85, 90, 102, 101, 58, 77, 103, 100, 99] new_percentages = [i if i <= 100 else 100 for i in percentages] print(new_percentages) لنشرح معا الكود بالتفصيل . أولا هذه الطريقة تسمى في بايثون بانية القوائم (List Comprehensions) حيث هذه طريقة مختصرة لبناء وترشيح قائمة عوضا عن إستخدام الحلقات التكرارية مثل for و while . الآن السطر الأول هو عبارة عن متغير percentages من نوع قائمة تحتوي على قيم . السطر الثاني نقوم بإنشاء متغير جديد يسمى new_percentages وهو عبارة عن قائمة وبداخل القائمة نقوم بتعريف بانية القوائم وهي تحتوي على ثلاثة أقسام أول قسم وهو تعريف الرقم الذى سيتم وضعه بداخل القائمة وفي هذه الحالة هو i . في القسم الثاني وهو الشرط وهو عبارة عن الشرط الذة نريد التحقق منه قبل وضع القيمة في القائمة وهو هنا نتأكد من أن الرقم أصغر من أو يساوى 100 . والقسم الثالث وهو حلقة التكرار وهو في هذه الحالية نقوم بالتكرار حول المتغير percentages. إذا هذا الكود يقوم بالتكرار حول القائمة percentages و يرى العناصر التي بداخلها إذا كان العنصر أقل من أو يساوى 100 نقوم بوضعه في القائمة الجديدة وأما إذا كان أكبر من 100 نقوم بوضع 100. ويمكنك قراءة المزيد حول بانية القوائم في موسوعة حاسوب : https://wiki.hsoub.com/Python/list#List_Comprehensions
-
إذا رسبت يمكنك التقدم مرة أخري حتي تنجح وبمجرد حصولك على الشهادة لن تستطيع الإمتحان مرة أخرى . ويمكنك قراءة المزيد حول التقدم للإمتحان من خلال الرابط التالي : https://support.academy.hsoub.com/exams
-
يجب على الأقل إتمام 4 مسارات كاملة فقط من الدورة ومن ثم تستطيع التقدم للإختبار والإمتحان بها فقط وليس الدورة كاملة ، ويتم التقدم للإختبار مرة واحدة فقط والحصول على الشهادة مرة واحدة. لكن نصيحتي لك عدم دراسة 4 مسارات فقط فالشهادة ليست مهمة فالمهم هو فهمك وإستيعابك وبالتالي من الأفضل لك إنهاء كامل مسارات الدورة. ولكن بالطبع إذا إجتزت الإختبار ستحصل على الشهادة. ستجد تفاصيل أكثر في الاجابة التالية :
-
ستجد أسفل الدرس صندوق للتعليقات كما هنا من فضلك قم بإرسال سؤالك هناك أسفل الدرس حيث هنا هو قسم الأسئلة العامة ولا نقوم بإجابة الأسئلة الخاصة بالدورة هنا .
- 1 جواب
-
- 1
-
هل يمكنك إرسال الدالة createStripeSession في جافا سكريبت
- 4 اجابة
-
- 1
-
أعتقد أن المشكلة لديك ليست في ال urls بل هي تعمل جيدا . الخطأ لديك في ملفات الجافاسكريت حيث يبدوا أنك قمت بوضع عنوان ال checkout في ملف الجافاسكريبت بدون ال prefix_default_language لذلك أولا يمكنك فتح نافذة ال network في أدوات المطور في المتصفح وأنظر إلى الطلب الذى يتم إرساله عند الدفع وأنظر إلى العنوان هل يوجد به ال lang أم لا إذا لم يوجد إذا كما أخبرتك يجب إضافة اللغة فى ملف ال Javascrip . وإذا كانت المشكلة شئ فمن فضلك قم بإرفاق صورة للرد الذى أرسله django لك على طلب ال checkout
- 4 اجابة
-
- 1
-
إن هذا من المستحيل تنفيذه إلا إذا كان لديك صلاحية الوصول إلى موقع شي إن ومن هناك تقوم بإرسال الطلبات عن طريق ال API إلى موقعك . حيث لا يمكنك تنفيذ طلبات من موقع أخر إلى موقعك عن طريق التحويل إلى عنوان أخر حيث هذا التقيد بسبب الأمان فتخيل لو أمكن تحويل أى شخص إلى رابط موقع أخر ومن ثم جعل ما يقوم به يتم إرساله إليك فهكذا يمكنك إختراق ومتابعة أى شخص . لذلك إذا لم تكن لديك صلاحية الوصول إلى موقع شي إن ووضع أكوادك بداخله فالحل الوحيد هو تطوير إضافة للمتصفحات حيث تجعل تلك الإضافة بالعمل على موقع شي إن وتقوم بتحليل الصفحة وفي كل مرة تقوم بإضافة منتج إلى السلة فسوف تعرف تلك الإضافة ومن ثم إرسال الطلب إلى موقعك مباشرة . ولكن هذا الحل ليس عمليا فلن يريد أحد تحميل إضافه لمتابعته و تسجيل ما يقوم به .
- 6 اجابة
-
- 1
-
وعليكم السلام ورحمة الله وبركاته . إن الدورات هنا في الأكاديمية يتم تطويرها وتحديثها دائما لتواكب متطلبات سوق العمل و أحدث التقنيات المطلوبة والمشهورة في الوظائف سواء في العمل الحر أو الشركات . وأيضا الأكاديمية هنا توفرلك ضمان لإسترداد كامل سعر الدورة في حالة أنك أنهيت الدورة ولم تجد أي عمل لمدة ستة أشهر (من وقت إتمام الدورة) و يمكنك رؤية هذا الشرط هنا في صفحة الأسئلة الشائعة. لذلك إذا كنت مجتهدا وقمت بإتمام الدورة والحصول على الشهادة فستحصل على عمل إن شاء الله ولكن شريطة كونك مجتهدا ومدي إستيعابك للدورة فهذا أيضا يعتمد على الشخص وليس فقط محتوي الدورة. كما وضحت لك سابقا أن هنا الأكاديمية تقوم بتطوير الدورات دائما بما يناسب سوق العمل وبمجرد شرائك للدورة لك وصول مدي الحياة للدورة وجميع التحديثات المستقبلية لها . وأيضا السؤال يفتقر إلى الدورة التي تريد دخولها لذلك يرجي توضيح الدورة . يمكنك قراءة الإجابات التالية للحصول على إجابة وافية لهذا السؤال بخصوص كل دورة في الأكاديمية هنا :
-
وعليكم السلام ورحمة الله وبركاته . إن Service Providers (مقدمو الخدمات) هي العمود الفقري لتطبيق Laravel وهو المركز الرئيسى لكامل عمليات تمهيد التطبيق (bootstrapping) , حيث يعمل كأداة لتسجيل وتكوين الخدمات التي يعتمد عليها التطبيق كاملا . يتم استخدام Service Providers لتحميل خدمات التطبيق مثل الربط بين الواجهات و تسجيل روابط حاوية الخدمات (ٍservice container) و مستمعي الأحداث (event listeners) و البرامج الوسيطة (middlewares) و حتى المسارات (route binding) . وإن جميع إصدارات لارافيل لها نفس إستخدامات Service Providers ونفس الخصائص والإختلاف فقط الآن في إصدار 11 حيث بدلا من أن يتم تسجيل ال Service Providers في config/app.php أصبح الآن يتم تسجيله في bootstrap/providers.php . أما طريقة إنشاء ال bootstrap/providers.php كما هي . والآن لنقم معا بإنشاء Service Providers. لإنشاء Service Provider نقوم بتنفيذ الأمر التالي : php artisan make:provider CustomServiceProvider وسيتم إنشاء ملف جديد بإسم ال Service Provider الذي قمت بكتابته في app\Providers وسيتم تسجيله تلقائيا بداخل bootstrap/providers.php . الآن هذا هو محتوي الملف بعد إنشاءه : namespace App\Providers; use Illuminate\Support\ServiceProvider; use App\Services\CustomService; class CustomServiceProvider extends ServiceProvider { /** * Register any application services. * * @return void */ public function register() { // تسجيل الخدمة في حاوية الخدمة $this->app->singleton(CustomService::class, function ($app) { // CustomService هنا سيتم تنفيذ الكود التالي عند محاولة إنشاء كائن من return new CustomService(); }); } /** * Bootstrap any application services. * * @return void */ public function boot() { // منطق يحتاج إلى التنفيذ بعد تسجيل الخدمات } } الآن بعد إنشاء ال service provider لنري كيف يتم إستخدامه . لنفترض أن لدينا controller يسمى test مثلا : use App\Services\CustomService; class TestController extends Controller { protected $customService; public function __construct(CustomService $customService) { $this->customService = $customService; } public function index() { // استخدام الخدمة $this->customService->performAction(); } } لاحظ هنا في TestController قمنا بإنشاء دالة بانية __construct وهذا ال controller يعتمد على CustomService الذى قمنا بإنشاء ال service providers لها وبهذا عند إستدعاء هذا ال controller أو قام أى route بالإشارة إليه سيتم تنفيذ الدالة البانية وبداخل الدالة البانية ننشأ كائن من CustomService وبهذا سيتم تنفيذ الكود الذى قمنا بكتابته بداخل service provider في الدالة register . لنري معا أين الإستفادة منه : من المؤكد أنك إستخدمت route binding في لارافيل : use App\Http\Controllers\UserController; use App\Models\User; // Route definition... Route::get('/users/{user}', [UserController::class, 'show']); // Controller method definition... public function show(User $user) { return view('user.profile', ['user' => $user]); } لاحظ في الكود السابق كيف قمنا بتمرير المعامل User إلى الدالة show ولذلك عند الذهاب إلى المسار /users/5 لارافيل تلقائيا سيقوم بوضع المستخدم صاحب ال id رقم 5 بداخل المتغير user$ . كيف قام بهذا ؟ وبدون حتي أن نرسل إستعلام إلى قاعدة البيانات لإحضار المستخدم . هذه هي قوة ال Service providers مع Service Container وهما من أقوى الخصائص في لارافيل ففي هذا المثال بسيط قد قام بتوفير علينا إرسال إستعلام إلى قاعدة البيانات وغيره . ويمكنك قراءة المزيد عن Service providers على موقع موسوعةحسوب على الرابط التالي .
-
هل يظهر خطأ عند تحميل الصور ؟ هل تقصد بالتحميل أى رفع الصور على السيرفر أم تحميلها من السيرفر ؟ إذا كنت تقصد رفع الصور فيجب التأكد من المسار الذى يتم رفع الصور فيه هل هو موجود أم لا . وهل لك صلاحية في الوصول إليه وإضافة الملفات أم لا ويفضل إرسال الكود لمعرفة أين يكمن الخطأ
-
قم بفتح موجه الأوامر cmd وكتابة الأمر التالي : python --version إذا ظهر إصدار بايثون فإذا قد تم تثبيته بنجاح وإضافته إلى متغيرات ال path environment . وإذا ظهر خطأ بعدم التعرف على بايثون فيرجي حذفه وإعادة تثبيته مع التأكد من تفعيل خيار Add python to path بعد ذلك قم بالضغط على علامة السهم فى أقصى اليمين وإختيار run python file . ومن المفترض الآن أن يعمل إن شاء الله . إذا حدثت أى مشكلة فيرجى إرفاق صورة
-
الخطأ يخبرك أنه لامكن الإتصال بالعنوان http://192.168.9.16:8080/shot.jpg . وذلك لان الخادم قد رفض الطلب لذلك تأكد من أنه يوجد لديك صلاحية للوصول إلى هذا الرابط وإذا كانت هذه كاميرا تأكد من أنه لديك سماحية الوصول إليها
-
وعليكم السلام ورحمة الله وبركاته . بعد الإنتهاء من دورة بايثون سيكون المشوار أمامك طويلا قليلا حيث ستكون حينها مبتدأ Junior وستكون المنافسة صعبة قليلا ولذلك سيكون عليك أولا إنشاء portfolio جيد ويحوي المشارييع التي أنشئتها وأيضا يجب عليك عمل المشاريع مع نفسك حتي بعد إنتهاء الدورة وذلك لزيادة خبرتك وأيضا لإضافته في ال portfolio الخاص بك . وأيضا فرصة الحصول على العمل تعتمد على إصرارك وعلى مدى إجتهادك فليس معني أنك أنهيت الدورة أنك بهذا أصبحت محترفا بل سيتوجب عليك دائما المذاكرة والبحث عنما هو جديد لذلك يجب عليك أن تطور نفسك دائما وألا تقف في مكان واحد . وهنا الأكاديمية تضمن لك الحصول على عمل خلال ستة أشهر من إتمام الدورة لذلك كما وضحت لك يجب عليك الإجتهاد والبحث في مواقع العمل الحر عن المشاريع البسيطة والتي لا تضمن خبرات كبيرة والتقديم فيها والبحث أيضا عن شركات بالجوار منك تطلب Juniors حيث أن العمل في بداية حياتك المهنية جيد حيث ستجد التدريب ومن يوجهك .
-
للأسف لا توجد ميزة تحميل الفيديوهات على الأكادمية وذلك حفاظا على الأمان وعدم سرقة الدروس . ويمكنك تشغيل الدرس وإيقافه مؤقتا حتي يتم تحميله في المتصفح ومشاهدته بعد ذلك لا من الممكن أن هذه المشكلة بسبب وجودإضافة adblock فغالبًا ذلك سبب المشكلة يمكنك استخدام uBlock Origin . ولأجل حذف الملفات المؤقتة يجب تحديث الصفحة بالضغط على CTRL + F5 . إن استمرت أرجو تجربة تحميل وتثبيت Cloudflare WARP فهو بمثابة طبقة وسيطة مثل الـ VPN من خلال شبكة Cloudflare وبعد التثبيت قم بتشغيل التطبيق بالضغط على زر الإتصال مباشرًة وتفقد الدروس مرة أخرى. https://install.appcenter.ms/orgs/cloudflare/apps/1.1.1.1-windows-1/distribution_groups/release وذلك لتفقد هل يوجد مشكلة بالإنترنت أم لا.
- 5 اجابة
-
- 1
-
وعليكم السلام ورحمة الله وبركاته. الخطأ غير واضح من الكود المرفق حيث هذا الكود هو فقط يقوم بإنشاء العنصر a الذى يحوي رابط تحميل الملف . حيث هذا السطر هو ما يقوم بإنشاء رابط التحميل ولنعرف أين الخطأ يتوجب علينا أن نعرف ما الذى يظهر لك وهل الرابط الذى يتم الذهاب إليه للتحميل صحيح أم لا . أعتقد أن المشكلة في ال parameter الذى ترسله للرابط هو file حيث تضع نقتطين (file=..uploads) ولا أعرف لماذا هل للذهاب مباشرة إلى عنوان الملف ؟ لذلك يفضل إرسال أيضا ملف download_script.php وايضا صورة للخطأ الذى يظهر لك
-
وعليكم السلام ورحمة الله وبركاته . لا توجد طريقة سوى تحويله إلى كود html و css وسيتوجب عليك أن يكون لديك العلم الكافي بلغة HTML و Css و أيضا javascript إذا كان الموقع تفاعليا . ويمكنك إستخدام أطر العمل مثل bootstrap و Tailwind . أو يمكنك البحث عن تصاميم مشابهة وتقوم بالتعديل عليها
- 3 اجابة
-
- 1
-
لامشكلة فأى شئ ننقطع عنه مدة من الزمن يتم نسيانه فهذا شئ طبيعي ولكن المراجعه تختلف على حسب ما كنت قد وصلت إليه . فإذا كنت قبل الإنقطاع قد ذاكرت جيدا وكانت نسبة إستيعابك للدورس كبيرة فستجد أن المراجعه سهلة بإذن الله وسريعه والطريقة الأفضل في هذه الحالة هي مشاهدة الدروس سريعا وخصوصا دروس الأساسيات و محاولة الإستذكار فإن وجدت صعوبة في إستذكار درس معين فلا تتخطاه حتي تفهمه حتي لو قمت بإعادته أكثر من مرة و محاولة حل التمارين بنفسك في أخر كل درس وحاول ألا تمل من هذا الموضوع . يمكنك تخصيص عدد ساعات معينة لك وحاول في هذه الساعات عدم فعل أى شئ سوى المذاكرة حتي لا يشتتك شئ عن المذاكرة. ويمكنك قراءة الإجابات التالية لتفاصيل أكثر عن الطرق الجيدة للمذاكرة:
-
هذه مشكلة شائعه فى livewire عند رفع الصور من خلال https وليس http كما في ال local . لذلك أولا لنجرب الحل التالي وهو يعمل بنسبة 90% حيث أن الخطأ هو من بسبب ال proxy . لذلك لنذهب إلى ملف app\Http\Middleware\TrustProxies.php ونقوم بتغير السطر protected $proxies; إلى السطر التالي : protected $proxies = '*'; ويجب أن يعمل هذا الحل إن شاء الله . إذا لم يعمل لنقم بتجربة الحل الآخر وهذا سيحل المشكلة إن شاء الله . لنذهب إلى ملف vendor\livewire\livewire\src\Controllers\FilePreviewHandler.php ونقوم بحذف السطر التالي من الملف حيث هو المسؤول عن الخطا 401 : abort_unless(request()->hasValidSignature(), 401);
- 2 اجابة
-
- 1
-
لاحظ أن الكود الذى أرسلته لا يوجد به الجزء الخاص بالإدخال في قاعدة البيانات . لذلك إذا كان هذا هو الملف كاملا إذا هذا ليس الإسكريبت الذى يتم تنفيذه . قم بالبحث في ملف الواجهة الأمامية html و أبحث عن خاصية action فى عنصر form وستجد بها إسم الملف قم بإرسال الكود في هذا الملف لمحاولة مساعدتك في حل المشكلة
-
توجد عدة أسباب لتلك المشكلة وأيضا عدة حلول لها . لنتبع معا الحلول : قم بتشغيل البرنامج كمسؤول هكذا ثم الضغط على الأيقونة التالية: ويمكنك قراءة الإجابات التالية :
- 3 اجابة
-
- 1
-
لا بالطبع لن يكون هناك أي مشاكل فلو جميع الأعمدة لها نفس الأسماء جميعها ومختلفه في أخر حرف أو رقم فلن يؤثر ذلك في شئ فإن قاعدة البيانات ليس لها أى علاقة سواء كانت الأعمدة متشابهة في عدة أحرف أم لا المهم هو عند إضافة بيانات في القاعدة يجب التأكد من العمود الصحيح الذى تريد إضافة البيانات فيه
-
وعليكم السلام ورحمة الله وبركاته . الخطأ بسيط جدا . أعتقد أنك بدلا من كتابة print قمت بكتابة price لذلك لا توجد دالة تسمى price price = [50,60,100,500,1000,1000000,20000000,91000000000] print(max(price))
- 3 اجابة
-
- 1