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

محمد عاطف17

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

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

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

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

    38

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

  1. مرحبا . الخطا فى هذا الجزء من الكود const allplus =document.querySelectorAll(".plus") // allplus.forEach(item => { item.addEventListener("click", (eo) => { const content=document.getElementsByClassName("content")[0] // الخطا هنا حيث يقوم دائما باخذ العنصر الاول من ال array content.classList.toggle("mm") }) }); ولحل المشكلة نريد كل عنصر ان ياخد ال class الخاص بالابن له ويمكننا تنفيذه كالتالى . const allplus =document.querySelectorAll(".plus") // allplus.forEach((item,index) => { item.addEventListener("click", (eo) => { const content=document.getElementsByClassName("content")[index] // هنا قمنا باستخدام متغير لمكان العنصر وبذلك كل عنصر يستخدم الchild الخاص به content.classList.toggle("mm") }) });
  2. مرحبا أخي . المتغيرات من نوع let و var متشابهان ولكن طريقة العمل هي المختلفه. حيث ان let تم تعريفها فى ES6 (2015). والفروق بينهم كالتالي . 1- إعادة التعريف . إذا قمت بإعادة تعريف المتغير من نوع let وسوف يقوم الكود بإظهار خطأ حيث لا يمكن تعريف المتغير فى المجال . var somthing = "somthing"; var somthing = "somthing2"; // هنا سوف يتم استبدال قيمة المتغير let somthing = "somthing"; let somthing = "somthing2"; // هنا سوف يعطيك الكود خطأ باه لايمكن إعادة تعريف المتغير 2- الرفع او Hoisting. ان لغة جافا سكريبت تتميز بخاصية الرفع دوانا عن معظم لغات البرمجة . تعريف الخاصية هو انه قبل ان يتم بدأ الكود فإن لغة الجافاسكريبت تقوم باعريف جميع المتغيرات عدا المتغيرات من نوع let والدوال فى بداية الكود وليس فى مكان كتابة الكود . console.log(somthing); // undefined هنا سوف يتم طباعة // أى اكواد أخرى var somthing = "somthing"; console.log(somthing); // somthing هنا سوف يتم طباعة ما بداخل المتغير console.log(somthing); // ReferenceError هنا سوف يتم طباعة حيث لايمكنك استخادم المتغير من نوع let قبل تعريفه // أى اكواد أخرى var let = "somthing"; console.log(somthing); // somthing هنا سوف يتم طباعة ما بداخل المتغير 3- المجال . حيث ان المتغيرات من نوع let تنتهى بمجرد انتهاء المجال الخاص بها ولا يمكن استخدامها خارج مجالها بعكس المتغيرات من نوع var var somthing = "somthing"; let somthing2 = "somthing2"; console.log(somthing, somthing2); // somthing somthing2 هنا سوف يتم طباعة المتغيران لانهم فى نفس المجال الخاص بهم { var somthing3 = "somthing3" let somthing4 = "somthing4"; console.log(somthing3, somthing4); // somthing3 somthing4 هنا ايضا سوف يتم طباعة المتغيرات لانهم فى نفس المجال الخاص يهم ولكن نلاحظ ان المتغير من نوع let سوف يتم تدميره بمجرد انتهاء مجاله } console.log(somthing3); // somthing3 هنا سوف يتم طباعةالمتغير من نوع let console.log(somthing4); // ReferenceError هنا سوف يظهر خطأ لان المتغير من نوع let قد تم تدميره بمجرد الانتهاء من المجال الخاص به
  3. السلام عليكم . هل من الممكن أن تقومى بكتابة هذا الامر وإرسال صورة لما سوف يظهر لكى . php -v و ارسال ملف php.ini الموجود فى xampp/php
  4. مرحبا أخى. يمكنك إستخدام ال validation بهذه الطريقة { 'api_key' => 'required|integer', 'tags' => 'required', 'posts' => 'required|array|min:1|max:20', 'posts.title' => 'required|string|min:5', 'posts.content' => "required|string|min:5', } حيث يمكنك التحقق من أى عنصر متداخل عن طريق وضعه بعد ال parent مسبوقا بنقطة.
  5. مرحبا أخى . هل يمكنك أن ترسل لي ملف ال model الخاص بال profile.
  6. مرحبا أخى . هل هذا الخطأ يظهر لك عندما تقوم بإرسال ال form من هذه الصفحة ؟ ام يظهر عندما تقوم بعمل تحويل من صفحة إلى صفحة ؟ -إن كان هذا ما يحدث هل يمكنك إرسال هذا الملف- الكود لا يوجد به خطأ ان كنت تقوم بإرسال ال form من هذه الصفحة . معنى رسائل التحذير الظاهرة هي أن المتغير $_POST لا توجد لديه هذه القيم $_POST['name']; $_POST['price']; $_POST['details']; $_FILES['image']; وهذا سوف يحدث فقط ان كنت تقوم بإرسال form اخرى لهذا الملف . إن كان هذا فعلا ما يحدث فقم بإرسال ال form الاخرى لنفس الملف وإذا كنت تريد أن تقوم بعمل redirect لهذه الصفحة تستطيع ان تستخدم هذا الأمر header('Location: '.'/your_file_location'); // هنا تقوم بوضع مسار الملف
  7. كل ال models الخاصة بلارافيل تستطيع أن تقوم بتعديل شكل البيانات اللتى تريدها أن تعود من قاعدة البيانات عن طريق اضافة هذا المتغير فى ال model protected $casts = [ 'any_variable' => 'date:Y-m-d', 'another_variable' => 'datetime:Y-m-d H:00', ] ويمكنك معرفة المزيد من طرق ال casting عن طريق laravel documentation https://laravel.com/docs/8.x/eloquent-mutators#date-casting
  8. أهلا أخى. يجب أولا ان تقوم بتنزيل برنامج composer وبعد تنصيبة تستخدم هذا الأمر فى المجلد الخاص بالمشروع composer install لتقوم بتحميل الملفات اللازمة للمشروع . وتأكد من تغير كافة الإعدادات الخاصة بالمشروع فى ملف ال .env من إعدادات قواعد البيانات و ال url الخاص بالمشروع . وتاكد من استخدام الأمر التالى الخاص بال migration لتسطيب قواعد البيانات . php artisan migrate وإن كان المشروع يستخدم إطار عمل خاص بال java script نستخدم الامرين التاليين. npm install npm run dev
  9. أهلا أخى . إذا كنت تستخدم أسماء الروابط مثل . Route::get('/posts', ...)->name('posts'); فهنا قد أعطينا هذا الرابط اسم posts وإذا كنا نريد أن نعرف إذا كنا في الرابط الخاص ب posts ام لا لوضع class active نستخدم الكود التالى <li class="{{Route::is('posts') ? 'active' : ''}}"> <a href="{{ url('posts.index') }}" > {{ $config->website_name }} </a> </li> وإذا لم نضع للروابط أسماء يمكن استخدام الكود التالى <li class="{{Request::url() === 'YOUR DOMAIN/posts' ? 'active' : ''}}"> <a href="{{ url('posts.index') }}" > {{ $config->website_name }} </a> </li>
  10. أهلا اخى . زر التسجيل لا يعمل لانه يحمل class disabled <li class="nav-item"> <a class="nav-link disabled" href="#" aria-disabled="true" data-toggle="modal" data target="#exampleModal">تسجيل الدخول</a> </li> لجعله يعمل ويظهر بالشكل العادى يجب ان نحذف class disabled <li class="nav-item"> <a class="nav-link" href="#" aria-disabled="true" data-toggle="modal" data-target="#exampleModal">تسجيل الدخول</a> </li>
  11. السلام عليكم . الخطأ في الكود أن حضرتك قمتى بوضع ال eventListener بداخل ال cx() function bttn.addEventListener("click",(params) => { let er= setInterval(() => { cx(); } , 3); setInterval(() => { clearInterval(er) }, 3000); }) إذا فإن هذا الجزء من الكود لن يتم تنفيذه إلا باستدعاء ال cx() function حيث ان الدوال لا يتم تنفيذ الاكواد بداخلها إلا عندما يتم إستدعائها. وال cx() function لا تستدعى إلا بالضغط على زر randam. إذا قمتى بالضغط على زر randam ثم الضغط على randam heart ستجدينه يعمل . وبذلك فإن الحل هو وضع هذا الجزء خارج نطاق ال cx() function ومن الافضل وضعها فى ال global scope في نهاية الكود . let bttn =document.getElementById("bttn") bttn.addEventListener("click",(params) => { let er= setInterval(() => { cx(); } , 3); setInterval(() => { clearInterval(er) }, 3000); })
  12. الخطأ هنا اخى mysqli_real_escape_sting() // string not sting mysqli_real_escape_string() // correct الكود الصحيح $name = mysqli_real_escape_string($conn , $_POST['name']) ; $email = mysqli_real_escape_string($conn , $_POST['email']) ; $password = mysqli_real_escape_string($conn , $_POST['password']) ; $pass = mysqli_real_escape_string($conn , $_POST['password_re']) ;
  13. لارافيل تستخدم اسماء ال variables وليس الترتيب فى الترجمة . مثل 'confirm' =>'Hello, :user, Please confirrm your :email' trans('confirm', [ 'user' =>'Emad','email' => 'email address' ]) وبذلك يمكنك ارسال ال array بدون ترتيب ظهورها فى ال string ولكن تاكد من ارسال الاسم الصحيح .
  14. السلام عليكم . الخطا هنا اخى if(year >= 2012){ feedBack.style.display = "block"; } انت تقوم فقط بتغير ال style لل feedback انت لا تريد تغير ال style ولكن تريد انت تجعل هذا العنصر يحمل invalid state ولعمل ذالك نستخدم yearSelect.setCustomValidity('any error!!') وهذه الدالة تقوم بجعل العنصر يحمل الخطا وبذالك لا نستطيع ان نقوم بعمل submit لل form وال errors تظهر تلقائيا بواسطة ال bootstrap. ولجعل العنصر صحيح مره اخرى تضع رساله الخطا فارغة. ولمزيد من التفاصيل يمكنك قرائة هذا المقال https://developer.mozilla.org/en-US/docs/Web/API/HTMLObjectElement/setCustomValidity
×
×
  • أضف...