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

كل الأنشطة

تحدث تلقائيًا

  1. الساعة الماضية
  2. الخطأ واضح في السطر رقم 72 في هذا السطر: if(isset($_POST['login'])){ فقد نسيت إغلاق القوس المنحني `}` لإنهاء الشرط `if` وهذا يعني أن كتلة الكود الخاصة بك ستظل مفتوحة بالكامل، مما يؤدي إلى حدوث خطأ التحليل. يجب أن تعدله بهذا النحو: <?php if(isset($_POST['login'])){ // ... الكود الخاص بك } // أضف القوس هنا ?> وأنصحك باستخدام مسافة بادئة متسقة. فهي تعزز قراءة الكود بشكل كبير وتجعل من السهل اكتشاف هذه الأنواع من الأخطاء، وهذه نسخة معدلة: <?php if (isset($_POST['login'])) { $conn = mysqli_connect("localhost", "root", "", "hospital"); if (mysqli_connect_errno()) { echo "Error! " . mysqli_connect_error(); } else { $ID = $_POST['ID']; $Pass = $_POST['Pass']; $query = "select * from user where ID='$ID' and Pass='Pass'"; $result = mysqli_query($con, $query); $row = mysqli_fetch_row($result); if ($row) { session_start(); $_SESSION[' ID'] = $row[0]; $_SESSION[' Fname' ] = $row[1]; $_SESSION[' Lname'] = $row[2]; $_SESSION[' Pass'] = $Pass; $_SESSION[' Email'] = $Email; header("location:profile.php"); } else { echo "incorrect ID or password, please enter a valid ID and password"; } } } // القوس المنحني الإغلاقي ?> يمكنك مراجعة هذه المقالة لإضافة التنسيق التلقائي في VSCode لعمل المسافات البادئة بشكل تلقائي:
  3. اليوم
  4. الخطأ بسيط ورسالة الخطأ توضح أنك قمت بفتح قوس معقوف { في السطر 72 أي: if(isset($_POST['login'])){ لكنك لم تقم بإغلاقه بعدها، فمفسر اللغة لم يجد قوس الإغلاق فأعطى الخطأ. يُفترض منك إضافة القوس في الأخير: if(isset($_POST['login'])){ } حاول دائما إحترام المسافة البادئة في الكتل البرمجية قبل سطر الكود لتجنب الوقوع في هذه المشاكل كما هو موضح في الصورة:
  5. في حال عملك مع لغة بايثون تأكد من تثبيت بايثون من الموقع التالي link ومن ثم تثبيت الامتداد الخاص بها في البرنامج كما يلي: تاكد عند فتح البرنامج الخاص فيك قم بفتح المجلد باكمله ليس فقط ملف واحد بشكل مباشر وتاكد من ان نهاية الملف py.
  6. في البداية يوجد خطأ عند تطبيقك الخط على محتويات الجدول أي عند انشاء كائن من الـTableStyle: ('FONTNAME', (0, 0), (-1, -1), 'Arabic') بهذا تكون قد حلت مشكلة عدم فهم وتشفير اللغة العربية أما بالنسبة للأرقام فيمكنك إنشاء التابع البسيط التالي للتحويل: def convert_to_arabic(number): arabic_digits = { '0': '٠', '1': '١', '2': '٢', '3': '٣', '4': '٤', '5': '٥', '6': '٦', '7': '٧', '8': '٨', '9': '٩' } arabic_number = '' for digit in number: if digit.isdigit(): arabic_number += arabic_digits[digit] else: arabic_number += digit return arabic_number ومن ثم استخدامه بالشكل التالي: reshaped_data = [ [ get_display(reshape(convert_to_arabic(cell))) for cell in row ] for row in mydata ] لتظهر النتيجة بالشكل التالي وتم ارفاق الكود كامل في المرفقات وتأكد من تنزيل المكاتب التالية قبل التشغيل : pip install reportlab pip install arabic_reshaper pip install python-bidi arabic_tables.py
  7. يوجد اصدارين من PyTorch اصدار يعمل على CPU واصدار على ال GPU ويعتمد نوع الاصدار الذي تريده الى نوع الخدمات التي تريد ان تعمل عليها فهناك نماذج تحتاج الى عمليات كبيرة لذلك تتطلب للتشغيل GPU. فان PyTorch هو إطار عمل مفتوح المصدر للتعلم العميق طور الإطار من قبل فريق بحث الذكاء الاصطناعي في شركة ميتا (فيسبوك سابقًا) عام 2016 استنادًا إلى مكتبة تورش Torch المستندة بدورها إلى لغة البرمجة Lua. اي قامو بجعل الخدمات التي تقدمها Torch تقدم بلغة بايثون فاصبحت PyTorch اي Py هي لتبيان انها النسخة التي تعمل بلغة بايثون نظرا لقوة وشهرة بايثون في تطوير نماذج الذكاء الاصطناعي. لتثبيت PyTorch نسخة ال cpu : pip3 install torch torchvision torchaudio لتثبيت PyTorch نسخة ال GPU : تحتاج اولا الى برنامج للتاخطب مع GPU حيث ان GPU الخاصة بشركة NVIDIA تعطينا برنامج يدعى CUDA يقوم بالتخاطب مع ال GPU وتجعل الGPU يقوم بالعمليات على التوازي مما يسرع من اتمام العمليلت اسرع من انجازها على GPU ولتسطيع PyTorch التخاطب وتنفيذ عملياتها لتثبيت CUDA: ملاحظة يجب ان يكون جهازك يملك GPU ذات قدرات عالية اقل شي GTX 1050 لتتمكن من العمل على جهازك. تثبيت (++Visual C) لان CUDA مبني على لغة (++c) ويحتاج بعض المكاتب عند تثبيته على حاسوبك الدخول الى الموقع التالي واختيار النسخة المناسبة لك حسب جهاز الحاسب الخاصة بك. الدخول الى موقع NVIDIA 3. ثم تثبيت CuDNN وهي عبارة عن مكاتب تدعم عمل البرنامج : تثبيت PyTorch من موقع الرسمي : حسب النسخة المتوافقة مع CUDA التي قمت بتحميلها مثال للنسخة 12.1 ويجب ملاحظة ان بعض النسخ قد لا تكون متوفرة بعد فيPyTorch لذلك نطر للعودة لنسخ اقدم من CUDA pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121 وبنسبة للفرق بين pip و conda : pip : هو اداة لادراة المكاتب و التنزيلات والحزم الخاصة بلغة بايثون تكون موجودة بشكل افتراضي عندد تنزيل اللغة. conda: هي نظام او برنامج يقوم بادراة افضل للمكاتب والحزم الخاصة بلغة بايثون خاصة للاشخاص المبتدئين لانها تقوم بتنزيل جميع المكاتب والادوات المشهورة التي تستعمل في بغة بايثون ويمكن تنزيلها عبر الرابط التالي linl
  8. مساحة (عرض) العنصر الأب صغيرة إذن، أو عرض المنتجات كبيرة على المساحة، لذا عليك تحديد مساحة الثلث لكل منتج من خلال التنسيق التالي للكلاس الخاص بالمنتجات: flex-basis: 33.3333% وهو إختصار للخواص التالية: flex-grow: 0 flex-shrink: 0 flex-basis: 33.3333%
  9. المشكلة تبدو أنها تكمن في دالة `askStudentID` وبناء على الكود المقدم ووصف المشكلة فعندما يدخل المستخدم رقم تعريف الطالب، يتم استدعاء دالة `askStudentID` متكررا حتى يدخل رقم تعريف طالب صالح فبعد إدخال رقم تعريف طالب صالح، لا تستمر الدالة إلى الخطوة التالية من استرجاع معلومات الدرس وتسجيل الطالب. لحل هذه المشكلة، تحتاج إلى تعديل دالة `askStudentID` للتعامل مع حالة رقم تعريف الطالب الصالح والمتابعة مع الخطوات التالية وهذا هو الكود المعدل: function askStudentID(){ rl.question('ادخل رقم الطالب: ', student_id=>{ if(student_id.trim() == '' || isNaN(student_id)){ console.log('يرجى إدخال أرقام فقط'); askStudentID(); }else{ dataBase.get(`SELECT * FROM students WHERE student_id = ${student_id}`, (err, rowStudent)=>{ if(err){ rl.close(); dataBase.close(err=>{ if(err) return console.log(err.message); else return console.log('تم إغلاق قاعدة البيانات.'); }) return console.log(err.message); }else if(rowStudent){ // المتابعة إلى الخطوة التالية لاسترجاع معلومات الدرس وتسجيل الطالب console.log('تم العثور على رقم الطالب.'); // الجزء الباقي من الكود لاسترجاع معلومات الدرس وتسجيل الطالب }else{ console.log('رقم الطالب غير موجود.'); askStudentID(); } }) } }) } فهنا قد قم بإدخال رقم تعريف طالب صالح، سيحتوي متغير `rowStudent` على معلومات الطالب. يمكنك استخدام هذه المعلومات للمتابعة مع الخطوة التالية من استرجاع معلومات الدرس وتسجيل الطالب وهذا الإجراء يجب أن يمنع الكود من الخروج من دالة `askStudentID` مبكرا ويسمح له بالمتابعة مع بقية عملية التسجيل.
  10. شكرا علي الرد لم استطيع فهمه ممكن شرح علي يوتيوب تنصحني بيه
  11. نعم ذلك صحيح وهو ما يعرف بالاستيثاق يمكنك التعمق به اكثر من خلال هذه الدروس والمقالات https://wiki.hsoub.com/Laravel/authentication https://io.hsoub.com/laravel/100860-ال-auth-في-laravel و بالتوفيق لك
  12. أرجو الإنتظار وسيتم الرد عليك من قبل مركز المساعدة في أقرب وقت، فقد تم إرسال مشكلتك إليهم، وسأعود إليك إن كان هناك أمر عليك فعله.
  13. كيف يمكنني الوصول الى بطاقة الدعم الفني الخاصة بي التي كنت اراسل المدرب الذي يتولى متابعة الامتحان الخاص بي من خلالها , حاولت الوصول اليها من الجيميل وكل ما اضغط على زر رؤية المحادثة كاملة يأخذني الى انشاء بطاقة جديدة. وقد كان اوصاني المدرب ان اقوم بارسال الكود والتعديلات عليها وان لا اقوم بفتح بطاقة دعم جديدة.
  14. بالنسبةللإلتزامات قصيرة الأجل، فيجب على الشركة سدادها خلال سنة واحدة أو دورة التشغيل العادية، وتشمل أمثلة ذلك الحسابات الدائنة، وأوراق الدفع، والقروض قصيرة الأجل، والمصروفات المستحقة. والالتزامات طويلة الأجل هي الالتزامات التي تستحق الدفع بعد سنة واحدة من تاريخ الميزانية العمومية، مثل القروض طويلة الأجل، والسندات، والالتزامات الاستئجارية. تُدرج الالتزامات قصيرة الأجل وطويلة الأجل في قسم الخصوم في الميزانية العمومية. وللحصول على القيمة الدفترية للالتزامات قصيرة الأجل، عليك جمع جميع المبالغ المدرجة في قسم الخصوم المتداولة، أما القيمة الدفترية للالتزامات طويلة الأجل قم جمع جميع المبالغ المدرجة في قسم الخصوم طويلة الأجل.
  15. في php لمعرفة صلاحيات مستخدم نستخدم جلسات session اما في إطار عمل لارافيل ماذا نستخدم الحظ بعض يستخدم كلاس يسمي Auth
  16. عليكي استخدام flex box، ثم تعيين flex-wrap لكي يتم عرض المنتجات الباقية أسفل المنتجات الأخرى عندما لا توجد مساحة في العنصر الأب، أي يتم إزاحتها على سطر جديد. أي تعيين التالي للعنصر الأب الذي يحتوي المنتجات: .wrapper{ display: flex; flex-wrap: wrap; gap: 10px; } ثم وضع المنتجات بداخله، وكل منتج يجب أن يكون بداخل div منفصل.
  17. السلام عليكم ، لماذا يقوم بالخروج من سطر الأوامر عندما أقوم بإدخال الstudent id ولا يتابع بقية الشيفرة في الجزء الخاص بعندما يقوم المستخدم بإدخال حرف r script.js
  18. مشكلة اختفاء العناصر قد تكون بسبب تموضع العناصر، لهذا تأكد من أن جميع العناصر موضوعة داخل حدود التخطيط الصحيحة، مثل ConstraintLayout أو LinearLayout، ومن خصائص العرض مثل ال visibility و layout_width و layout_height فيجب أن تكون مضبوطة بشكل صحيح. لا يمكن تحديد المشكلة بالتحديد، لهذا إن لم يعمل معك فيمنك القيام بتنظيف ملفات ذاكرة التخزين المؤقت يمكن ذلك من خلال الانتقال إلى: File > Invalidate Caches / Restart. وفي بعض الأحيان، يمكن أن يؤدي إعادة تشغيل أندرويد ستوديو إلى حل المشكلة أو تحديثه. أما بالنسبة لمشكلة عدم كتابة التعليمات البرمجية التي واجهتك، تأكد من أن لوحة المفاتيح مضبوطة على اللغة الصحيحة وأن جميع الاختصارات تعمل بشكل صحيح. قد يكون بسبب مشكلة في التحديثات، لذا تأكد من أنك تستخدم أحدث إصدار من أندرويد ستوديو. انتقل إلى: File > Settings > Appearance & Behavior > System Settings > Updates للتحقق من وجود تحديثات، إذا لم تنجح الحلول الأخرى، فحاول إعادة تثبيت أندرويد ستوديو لكن تأكد من حذف جميع المجلدات والملفات المتعلقة بأندرويد ستوديو قبل إعادة التثبيت.
  19. ابيه يطلع نفس الموقع الي تحت بنجب بعض صورت الcss
  20. أولا في حالة ما كانت لديك شركة، فستحتاج إلى الرجوع إلى الميزانية العمومية للشركة، وتحديد حسابات الالتزامات قصيرة الأجل وطويلة الأجل، ثم جمع الأرصدة، والوصول في النهاية إلى القيمة الدفترية. فحينما تقوم بتحديد تلك الالتزامات في القائمة المالية سيتم استخدام القوائم المالية لحساب القيمة الدفترية، والتي تتطلب القيام بالخطوات التالية: تحليل القوائم المالية: من خلال فحص البيانات المالية الخاصة بالشركة، مثل البيانات الدورية (مثل بيان الدخل والميزانية العمومية) وبيان التدفقات النقدية. تحديد الالتزامات الطويلة والقصيرة الأجل: هنا نقوم بتحديد الالتزامات التي تعتبر طويلة الأجل (أي تلك التي تستحق فترة تزيد عن سنة واحدة) والالتزامات القصيرة الأجل (تستحق فترة أقل من سنة). حساب القيمة الدفترية: لحساب القيمة الدفترية للالتزامات، من خلال جمع قيمة الالتزامات الطويلة والقصيرة الأجل وهنا يجب أن تكون الأرقام المستخدمة في هذا الحساب مبينة في القوائم المالية الخاصة بالشركة. التأكد من الدقة: من أجل التأكد من أن البيانات التي تم استخدامها لحساب القيمة الدفترية دقيقة وموثوقة. يمكن أن يتم التحقق من القوائم المالية والتقارير الخاصة بالشركة نفسها. وبمجرد حساب القيمة الدفترية، يمكن استخدام هذه المعلومات لتقييم حالة التمويل الخاصة بالشركة وفهم كيفية توزيع الالتزامات على المدى الطويل والقصير، لكن يجب أن ننوّه بأنّ القيمة الدفترية للالتزامات ليست القيمة الفعلية التي يتم دفعها، وإنما تمثل القيمة المحاسبية لهذه الالتزامات في وقت معين.
  21. ال "methods chaining" أو "سلسلة الدوال" هو عبارة عن أسلوب يتيح لنا استدعاء سلسلة من الدوال على كائن واحد دون الحاجة إلى تخزين النتيجة بين كل استدعاء، وفي إطار العمل Laravel نجد أن العديد من الدوال ترجع `$this`، وهذا يعني أنها تعود بالكائن نفسه بعد الانتهاء من تنفيذ الدالة، مما يسمح بمواصلة استدعاء الدوال الأخرى على الكائن نفسه بسلاسة.أما بخصوص العلامة "::" في PHP، فهي تستخدم لاستدعاء الدوال الثابتة (static methods) والثوابت (constants) من داخل الصنف (class) بدون الحاجة لإنشاء كائن من الصنف، انظر لهذا المثال: class MyClass { public static function myStaticMethod() { return "Laravel"; } } echo MyClass::myStaticMethod(); // سيطبع "Laravel" وأما بالنسبة لعملية "->" فهي تستخدم للوصول إلى خصائص الكائنات (properties) والدوال ضمن الكائنات (methods)، أو للوصول إلى العناصر في مصفوفة، يمكن أن يتضح الأمر أكثر من خلال هذا المثال: class MyClass { public $name = "Hsoub"; public function greet() { return "Hi, " . $this->name; } } $obj = new MyClass(); echo $obj->greet(); // سيطبع "Hi, Hsoub" في حين "->" فهي تستخدم للإشارة إلى أن الدالة تعمل على كائن (Object) معين.
  22. هناك أسباب كثيرة تجعلنا نستخدم methods chaining ومنها : يسهل methods chaining فهم تتابع الكود وقراءته بشكل افضل ويجعل الكود أكثر سلاسة وسهولة اثناء التعديلات مستقبلا . في بعض الاوقات تحسن methods chaining من أداء التطبيق بشكل عام، على سبيل المثال يمكن تجنب تحميل البيانات من قاعدة البيانات بشكل متكرر عند استخدام الـ eager loading فيLaravel وبهذا ستحصل على سرعه واداء فاضل اثناء عمل التطبيق . ليس بالضرورة ذلك يمكنهم ارجاع قيم مختلفة كما في هذا المثال الخاص بتسجيل الدخول والذي يقوم بأرجاع قيمة منطقية او قيمة public static function isLoggedIn($userId) { $user = User::find($userId); if ($user) { return $user->is_logged_in; } return false; } علامة (::) تمسى (scope resolution operator) تستخدم للوصل الى الدوال والمتغيرات داخل الكلاس كما في المثال التالي : class MyClass { const MY_CONSTANT = 10; public static function myFunction() { return "Hello"; } } echo MyClass::MY_CONSTANT; echo MyClass::myFunction(); اولا قمنا باستخدامه للوصول الى الثابت MY_CONSTANT الموجودة داخل الكلاس MyClass ثم استخدمناه ايضا لاستدعاء الدالة myFunction الموجودة في الكلاس MyClass و ماهو -> arrow operator يستخدم للوصول إلى الخصائص والدوال لكائنات الكلاس كمثال class Person { public $name; public function sayHello() { return "Hello, my name is " . $this->name; } } $person = new Person(); $person->name = "John"; echo $person->sayHello(); // يُطبع "Hello, my name is John" اولا استخدمناه للوصول الى الخاصية name وتعيين القيمة John لها ثم استخدمناها ايضا لاستدعاء الدالة sayHello الموجودة في الكلاس Person بالتوفيق لك
  23. السلام عليكم ورحمة الله وبركاته لماذا اغلب استعمال إطار عمل لارافيل عبارة دوال مربوطه ببعضها methods chaining هل كلهم عبارة انه يرجعو return $this ممكن شرح colon في php :: عبارة عن نقطتين وراء بعض و ماهو -> arrow operator
  24. كيف استخرج القيمة الدفترية للالتزامات طويلة وقصيرة الاجل؟
  25. سلام عليكم أنا اواجه مشكلة في اندرويد استيديو نسخة 2021.3.17 عندما اضع العناصر مثل button او اي من العناصر الأخرى تختفي الواجهة ولا يوجد سبب لأختفاءها وبعدها نزلت نسخة 2023 لا استطيع كتابة الأكواد رجاء جاوبوني عن هذه المشكلة
  1. عرض المزيد
×
×
  • أضف...