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

محمد عاطف17

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

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

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

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

    38

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

  1. ووالديك اللهم امين. نعم النسخ الاحتياطى يتم على حسب المدة اللتى تريدها وعلى حسب كمية البيانات المدخله . ممكن ان تقوم بعمل النسخ الاحتياطى يوميا مثلا او اسبوعيا او شهريا على حسب كم البيانات لديك . ولكن لا احبذ ان تقوم باخذ نسخه احتياطية كل ما يتم ادخال قيمة واحده او عدة قيم . ونعم النسخ الاحتياطى يقوم اولا بانشاء الجدول ثم انشاء جملة اضافه لجميع البيانات فى هذا الجدول . اما اذا كنت لا تريد ان يقوم بانشاء الجداول وتريد فقط القيم يمكنك اضافة هذه الجملة بعد اسم قاعدة البيانات . --no-create-info
  2. نعم الان يعمل بالفعل . تاكد ان قاعدة البيانات تحتوى على اى جداول و بيانات ليتم اخذ نسخة احتياطية منها
  3. يمكنك استخدام خاصية ال data attribute فى الجافا سكريبت حيث يمكنك اضافة data attribute بالاسم الذى تريده لعنصر ال HTML ومن خلال الجافا سكريبت يمكنك قراءة هذه البيانات . هنا فى الزر الخاص بفتح ال modal نقوم باضافة اثنين من ال data attribute و نقوم بتمرير القيم الخاصة بخطوط الطول وخطوط العرض . <button type="button" data-title="المنشأة" data-latitude="{{$latitude}}" data-longitude="{{$longitude}}" class="show-map-modal dropdown-item"> <i class="fa fa-image text-secondary" style="font-size: 20px"></i> </button> وبواسطة الجافاسكريبت يمكننا قراءة هذه البيانات عن طريق خاصية ال dataset property ويكون مثل هذا اذا سنقوم بتغير هذا السطر فى ملف ال show_maps.js الى هذا showMap(element.dataset.latitude, element.dataset.longitude); وسيعمل جيدا ان شاء الله
  4. هل تقصد ان ايقونة الملف لم تتغير ؟ لان الملف طالما يحتوى على امتداد .js فان اى متصفح او اى سيرفر سوف يتعامل معه على انه ملف js. اما اذا كنت تقصد ان الايقونة لم تتغير فتاكد بانك جهازك يحتوى على محرر نصوص يمكنك من التعامل مع ملفات ال js . اما ذا كان لديك بالفعل محرر نصوص فقم بعمل هذه الخطوات حتى يتم التعامل مع امتداد .js مع هذا المحرر قم بالضغط على الملف index.js وقم باختيار properties (خصائص) ستفتح لك هذه النافذة قم بالضغط على change . ثم قم باختيار المحرر الخاص بك وسيعمل جيدا
  5. وعليكم السلام ورحمة الله وبركاته . الخطأ فى الكود هو انك لم تضع قيمة ابتدائية للحقل المدخل لذلك هو يرى ان القيمة الحالية فارغة لذلك لا يدخل الى الشرط if والحل هو كالتالى ان نضع قيمة ابتدائية ب 1 او على حسب ماتريد وهذا هو الكود <input type="text" class="qty_input bg-light w-50 text-center" disabled value="1"> والشرط الذى تستخدمه هو ان القيمة فى هذا الحقل لا يمكن ان تقل عن 1 ولا تزيد عن 10 لذلك تاكد من ان هذا هو الشرط الذى تريده . وان وضعت القيمة الابتدائية ب 0 فى الشرط لن يعمل وانا اقترح ان تغير الشرط هذا الى 0 وليس 1 ليعمل جيدا
  6. حسنا يجب اولا وضع مسار ال mysql فى ال path الخاص بالويندوز . قم بالضغط على زر الويندوز وقم بالبحث عن كلمة en ستظهر لك هذه الايقونة قم بالضغط عليها ستظهر لك هذه النافذه قم بالضغط على Environment Variables ستظهر لك نافذة اخرى قم اولا باختيار ال path ثم اضغط على زر edit ستظهر لك هذه النافذة قم بالضغط اولا على new ثم browse واختار مكان تنصيب ال mysql ثم مجلد bin ثم قم باغلاق موجه الاوامر (cmd) وقم بفتحه مره اخرى واكتب امر mysqldumb يجب ان تظهر لك هذه الرسالة . وبذلك قمنا بوضع ال mysql فى ال path الخاص بالويندوز . واخيرا كما وضحت فى الحل السابق قم بتغير سطر الكود هذا بما لديك حيث ستقوم بوضع مسار تنصيب ال mysql لديك . وسيقوم بالعمل جيدا واخذ نسخ احتياطية لديك على ال localhost . ما قمنا به هنا لانك تعمل على نظام تشغيل ويندوز اما نظام تشغيل linux فان الكود الذى لديك سيعمل جيدا دون الحاجة الى اى من هذه الخطوات
  7. هل يمكنك ان تقوم بفتح موجه الأوامر (cmd) وتقوم بكتابة هذا الامر mysqldump وترسل لى النتيجة . اذا كنت تستخدم mamp او xampp فيجب ان ترسل مرسال ملف mysqldump في هذا السطر فيصبح الحل كالتالى اذا كنت تسخدم xampp و يوجد على ال c لديك $result = exec('C:\xampp\mysql\bin\mysqldump.exe '.$db_name.' --password='.$password.' --user='.$db_user.' --single-transaction >'.dirname(__FILE__).'/'.$filename,$output);
  8. اذا كنت تعمل على نظام Linux فى ال localhost سيمكنك القيام بعمل نسخة احتياطية حيث ان الكود المرفق يقوم بالتحقق من نظام التشغيل واذا كان Linux سيقوم بعمل نسخة احتياطية وما دون ذلك لن يقوم بعمل نسخة احتياطية اذا كنت تريد عمل نسخه احتياطية لديك يمكنك ازالة شرط التحقق فى الكود المرفق وهذا هو الشرط قم بحذفه واستبداله بهذا الكود echo '<p><a href="?backup=now"><h3 style="margin-top: 35px;"> لنسخة احتياطية اضغط هنا </h3></a></p>'; if(isset($_GET['backup'])){ if($_GET['backup'] == "now"){ backup(); } }
  9. حينما تقوم بملئ الحقول عن طريق ال javascript فهى فقط تقوم بتغير القيمة ولا تقوم بارسال الحدث (event) و livewire تقوم فقط بتحديث القيمة عند إرسال الحدث input ولذلك الحل سيكون عن طريق ارسال الحدث يدويا بعد تغير القيمة مثل هذا . // بعد كود تغير القيمة document.getElementById('latitude').dispatchEvent(new Event('input')) document.getElementById('longitude').dispatchEvent(new Event('input'))
  10. هل تاكدت من ادخال بيانات عنوان قاعدة البيانات (host) و اسم المستخدم وكلمة المرور صحيحة
  11. المشكلة كما اخبرتك منذ البداية ان العنصر map غير موجود . حيث ان الملف mapLeaflet.js يتم تنفيذه فى صفحة ال index حيث لا يوجد حتى الان العنصر map لذلك الحل هو اول يجب عليك نقل هذا المتغير بداخل الدالة initMap ثانيا ضع هذه الكود فى اخر صفحة ال modal اللتى تسمى tents.blade.php @script <script> $wire.on('map_opend', (event) => { let interval_id = setInterval(() => { if ($('#map').length) { initMap(); clearInterval(interval_id); } }, 300); }); </script> @endscript وفى ملف TentComponent نضع هذا السطر فى اخر دالة create و دالة edit $this->dispatch('map_opend'); ويمكنك ارجاع كل شئ كما كان قبل تعديل هذا الجزء وستعمل جيدا ان شاء الله كما هو مرفق فى الصورة
  12. ممكن تبعتلى ملفات الكود مضغوطة. المفروض الكود الاخير هذا يحل المشكلة
  13. للاسف ليس هناك طريقة مؤكده لعدم تكرار المشكلة . حيث ان المشكلة تكمن فى أن بعض الملفات قد يحدث لها تلف او تم حذف ملف او برنامج عن طريق الخطأ او عن طريق برامج اخرى . ومن الممكن أن يكون الخطأ حدث إذا قمت بتنصيب قاعدة بيانات اخرى او برامج اخرى تتعارض مع xampp . او من الممكن انك قمت بإنشاء قاعدة بيانات تحتوى على جداول وحدث خطأ فى جدول منهم أدى الى تعطيل سيرفر قاعدة البيانات .
  14. قم اولا بالذهاب الى مكان تنصيب برنامج xampp حيث يوجد غالبا فى ال C ثم نذهب الى مجلد mysql ومن ثم إلى مجلد data وفى مكان مسار الملف نكتب كلمة cmd كما فى الصورة سيقوم بفتح نافذة لبرنامج موجه الاوامر (cmd) ثم نقوم بكاتبة الامر التالى ..\bin\aria_chk -r mysql\*.MAI ونقوم بحذف اى ملف يبدا aria_log. كما اشرت فى الصورة الأولى ثم نقوم بتشغيل xampp مرة أخرى ويجب ان يعمل الان إن شاء الله . وإذا لم يتم حل المشكلة يمكنك حذف xampp واعادة تحميله مرة اخرى يجب ان يعمل حيث ان المشكلة بالاساس هى فى احد الجداول فى قاعدة البيانات الحالية ولكن سيتم حذف جميع قواعد البيانات ولن يتم استعادتها عند إعادة التحميل
  15. واياكم اللهم امين
  16. الخطأ هنا في السطر رقم 10 . حيث أن كود ال c++ يتم تنفيذه بالترتيب أى سطر بعد سطر و هنا انت تقوم باستخدام النوع stUser قبل تعريفه فى سطر 21 . لذلك الحل هو نقل سطر 10 إلى ما بعد تعريف ال struct stUser اى ما بعد سطر 27 .
  17. هل الخطأ يظهر بمجرد تشغيل البرنامج قبل ان تدخل اسم المستخدم وكلمة المرور ام بعد ذلك ؟
  18. هل يمكنك ان ترسل ليه صورة لملف تقارير الاخطاء و تكون اخر جزء فى الملف ليظهر الخطأ . يمكنك الضغط على زر Logs ثم mysql_error.log
  19. الكود الذى ارسلته يعمل جيدا . هل يمكنك ان تخبرنى ما هى الخطوات التى تقوم بها لتؤدى إلى هذا الخطأ تاكد ان الملف لا يحتوى على أسطر فارغة او أى مسافات زائدة . حيث من الممكن ان يكون هذا هو السبب الذى يحدث بسببه الخطأ
  20. هل يمكنك ان ترسل محتويات ملف ال users.txt . لان الخطأ لديك هو انك تحاول الوصول الى عنصر غير موجود فى ال vector واعتقد هذا العنصر هو حينما تقوم باخذ البيانات من الملف هنا فى هذا السطر
  21. او يمكنك استخدام wire:ignore لتمنع إعادة بناء الخريطة مرة اخرى <div class=" mb-3 col-md-12 " wire:ignore > <label class="form-label">الموقع </label> <div id="map" style="height: 300px;"></div> </div>
  22. اذا لم تكن تحتاج ملف ال map API فى كل مكان وتحتاجه فقط فى صفحة ال index حيث يوجد ال modal فيمكنك حذفهم من script.blade.php وبعد هذه المتغيرات يمكنك إنشاء متغير جديد ولنعطه اسم مثلا isRenderedBefore public $isRenderedBefore = false; وهنا قبل فتح ال modal نضع هذه السطر $this->isRenderedBefore = true; وفى ملف ال index الخاص بال modal نضع هذا الكود @section('script') @if (!$isRenderedBefore) <script async src="{{ asset('/js/leaflet/mapsGoogleapis.js') }}"></script> <!-- Google Map Api like file --> @endif <script src="{{ asset('/js/leaflet/mapLeaflet.js') }}"></script> <!-- Google Map Api file --> @endsection جرب هذا وإن شاء الله بيظبط معك
  23. اين تقوم باستدعاء هذه الملفات ؟ الخطأ فى صفحة ال index حيث انك حين تقوم بفتح ال modal او إرسال نموذج التحقق فإن livewire يقوم بإعادة تحميل صفحة ال index وبالتالى ملفات استدعاء ال map API تقوم بالتحميل مرة اخرى ولذلك يحدث الخطأ لان ملفات ال api يجب ان تعمل فى اول مرة فقط قبل ان تقوم الصفحة بالتحميل وعندما تعيد تحميل الصفحة تحدث المشكلة . لذلك الحل يتوقف على مكان استدعائك لهذه الملفات . فلترسل لى اين تقوم باستدعائها لاساعدك باذن الله
  24. هذه خاصية فى laravel تسمى Service Container وهى فعليا من اقوى الخصائص التى يتميز بها laravel حيث انك عند استعمالها توفر عليك مجهودا كثيرا . هذه الخاصية تقوم بعمل حقن القيم للدوال عند استدعائها تلقائيا دون الحاجة منك إلى ان تمررها . و الاقوى من ذلك ان laravel يتعرف على نوع المتغير ويقوم بحقنه تلقائيا . وهذه الخاصية فى ال routes تسمى ب route binding حيث لارافل يتعرف تلقائيا على المتغير ويقوم بحقنه . مثلا لو كان لديك عنوان url يقوم بعرض المستخدم مثلا . وهذه العنوان كالتالى Route::get('/user/{user}'); هنا قمنا بتعريف عنوان لعرض المستخدم و {user} هنا هى ال id الخاص بالمستخدم . وهنا فى الكود الخاص بال controller public function show(User $user){ dd($user); } هنا ستلاحظ ان laravel قام تلقائيا بالبحث عن المستخدم بال id الموجود فى العنوان وقام بحقنة فى المتغير user$ واذا لم يوجد هذا المستخدم فلارافيل تلقائيا يظهر خطأ 404 غير موجود . ولمعرفة كيفية إنشاء مثل هذه الخاصية و معلومات اكثر يمكنك قراءة هذه المقالة Service Container
×
×
  • أضف...