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

بلال زيادة

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

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

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

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

    30

كل منشورات العضو بلال زيادة

  1. يجب التأكد من بيانات الاتصال بsmtp الخاص بك مثل MAIL_MAILER=smtp MAIL_HOST=smtp.mailtrap.io MAIL_PORT=2525 MAIL_USERNAME=null MAIL_PASSWORD=null MAIL_ENCRYPTION=null // MAIL_FROM_ADDRESS=null MAIL_FROM_NAME="${APP_NAME}" وأيضا التأكد من حالة التشفير في ملف env. MAIL_ENCRYPTION=tls أو MAIL_ENCRYPTION=ssl , و التأكد من حذف الملفات المؤقتة من خلال الأمر التالي php artisan config:clear أو يمكنك استخدام الأمر التالي لحذف جميع الملفات المؤقتة php artisan optimize:clear
  2. هل هناك قيمة في account الموجودة في ملف constants.php في مجلد config يجب تغييرها للقيمة التي تريد البدء منها و لكن أنصحك بالاعتماد على قيمة id في ربما تكون أدق لجلب رقم المتجر.
  3. لاحظ في الصورة الثانية السطر 70 ، أنه أفتراضياً يبدأ من العدد 100 ، هل يمكنك تعديلها و من ثم اخباري بالنتيجة. و أيضا لماذا لا تستفيد من قيمة id بحيث هي قيمة كل متجر يتم إنشائه وتكون رقمه ؟
  4. يمكنك إنشاء وسم div بهذا الشكل <div class="items"> <div class="box"> <div class="box-header"> <h3>title</h3> </div> <div class="box-body"> <img src="image1.png" /> </div> <div class="box-footer"> <p>Description here</p> </div> </div> <div class="box"> <div class="box-header"> <h3>title</h3> </div> <div class="box-body"> <img src="image1.png" /> </div> <div class="box-footer"> <p>Description here</p> </div> </div> <div class="box"> <div class="box-header"> <h3>title</h3> </div> <div class="box-body"> <img src="image1.png" /> </div> <div class="box-footer"> <p>Description here</p> </div> </div> <div class="box"> <div class="box-header"> <h3>title</h3> </div> <div class="box-body"> <img src="image1.png" /> </div> <div class="box-footer"> <p>Description here</p> </div> </div> <div> ثم نستخدم flexbox و لجعل العناصر بجانب بعض نختار الخاصية display: flex ليتم وضع العناصر بجانب بعضها مثل .items{ display: flex; } .items .box{ border: 2px solid #CCC; margin: 5px 20px; } و قمنا باستخدام الخاصية margin لجعل هوامش من الجهات الأربعة للصناديق التي تحتوي على العناصر المتمثلة في العنصر box .
  5. أو يمكنك إنشاء عنصر حاوي للعناصر ( container ) بحيث يتم توسيط هذا العنصر في منتصف الصفحة باستخدام الخواص width, margin <div class="container"> // هنا العناصر الخاصة بك </div> والأن نطبق التنسيق لجعله في المنتصف .container{ width: 500px; margin: 0 auto }
  6. المُنشئ ( constructor ) هو أيضًا Method في الكلاس ( class ) ، وفي ما يلي قد يجعلك تشعر بالاختلاف بشأن المُنشئ: يحمل المُنشئ نفس اسم الفئة ( class ) ، كما في المثال التالي class Person{ String name; int age; Person(){ name = new String(); age = 2; } } المُنشئ هو الطريقة الأولى التي يتم تشغيلها عند إنشاء مثيل للفئة (يسمى أيضًا الكائن). المُنشئ ، باعتباره أول طريقة يتم تشغيلها ، هو عادةً ما يُستخدم لإنشاء مثيل للكائنات وتهيئة المتغيرات ، والتي هي أعضاء في الفئة، لا يقوم المُنشئ بإرجاع أي قيمة وبالتالي لا يوجد نوع إرجاع. يمكن تحميل المُنشئ ، مثل أي وظيفة. Method هي مجموعة من العبارات التي يتم تجميعها معًا لإجراء عملية. مثل class Person{ public static int test(int x, int y) { } }
  7. هل يمكنك تجربة استخدام خاصية التعويم float للزر ، كما في الشكل التالي float:left ثم تخبرني بالنتيجة ؟
  8. يمكنك استخدام مكتبة بوتستراب الذي توفر لك خصائص أكثر من رائعة في جعل الموقع متجاوب مع جميع الشاشات لذلك يمكنك الاطلاع على توثيق مكتبة بوتستراب من هنا ، و هذه المكتبة توفر مكونات جاهزة يمكنك استخدامها في موقعك بشكل كامل و هذه المكونات قابلة للتخصيص من قبل المطور أي بمعنى يمكن إجراء تعديلات عليها بشكل كلي لتناسب احتياجات المبرمج، و أيضا هناك طريقة أخرى و هي استخدام Media Queries التي تكون التركيبة العامة لها كالتالي /* هنا للشاشات الصغيرة جدا*/ @media (max-width: 576px) { ... } /* هنا لشاشات التابلت وغيرها من الأجهزة اللوحية */ @media (max-width: 768px) { ... } /* هنا لشاشات الحاسوب المكتبية*/ @media (max-width: 992px) { ... } /* هنا لشاشات الكبيرة*/ @media (max-width: 1200px) { ... } بحيث يمكن تنسيق الموقع ليكون متوافق مع شاشات الجوال كالتالي @media (max-width: 576px) { .navi a { text-decoration: none; color: #3a6cf4; font-weight: 500; font-size: 0.1em; padding-right: 23px; } .main-btn { text-align: center; display: block; } .social-icons { text-align: center; margin: 20px 0; } } بحيث يمكنك إكمال تنسيق الصفحة بناء على عرض الشاشة التي تحتاج أن يظهر عليها الموقع بالشكل الذي تريده , ويكون كامل ملف css.css @import url('https://fonts.googleapis.com/css2?family=Noto+Kufi+Arabic:wght@100;200;300;400;500;600;700;800;900&display=swap'); *{ font-family: 'Noto Kufi Arabic', sans-serif; margin: 0; padding: 0; box-sizing: border-box; scroll-behavior: smooth; direction: rtl; } header{ background-color: #f0f0f0; width: 100%; position: fixed; z-index: 999; display: flex; justify-content: space-between; align-items: center; padding: 10px 200px; } .logo{ text-decoration: none; color: #3a6cf4; font-weight: 700; font-size: 1.8em; } .navi a { text-decoration: none; color: #3a6cf4; font-weight: 500; font-size: 1.1em; padding-right: 30px; } .navi a:hover{ color: #601cfc; } section { padding: 100px 200px; } .main{ width: 100%; min-height: 100vh; display: flex; align-items: center; background: rgba(0,0,0,0.4) url(landing-image.png) no-repeat; background-blend-mode: darken; background-size: cover; background-position: center; padding-bottom: 60px; } .main h2{ color: #fff; font-size: 1.4em; font-weight: 500; } .main h2 span{ display: inline-block; margin-bottom: 10px; color: #4e9eff; font-size: 3em; font-weight: 600; } .main h3{ color: #fff; font-size: 2em; font-weight: 700; margin-top: 10px; margin-bottom: 30px; } .main-btn{ color: #fff; background-color: #3a6cf4; text-decoration: none; font-size: 1.1em; font-weight: 600; display: inline-block; padding: 0.25em 3.1875em; border-radius: 15px; margin-top: 10px; margin-bottom: 5px; transition: 0.7s ease; } .main-btn:hover{ background-color: #601cfc; transform: scale(1.1); } .social-icons a{ color: #fff; font-size: 1.7em; padding-left: 30px; margin-right: 5px; } .title{ display: flex; justify-content: center; color: #3a6cf4; font-size: 2.2em; font-weight: 800; margin-bottom: 30px; } .content{ display: flex; justify-content: center; flex-direction: row; flex-wrap: wrap; } .card{ background-color: #fff; width: 21.25em; box-shadow: 0px 5px 25px rgba(1 1 1 / 15%); border-radius: 10px; padding: 25px; margin: 15px; transition: 0.7s ease; } .card:hover{ transform: scale(1.1); } .icon{ color: #3a6cf4; font-size: 8em; text-align: center; } .info{ text-align: center; } .info h3{ color: #3a6cf4; font-size: 1.2em; font-weight: 700; margin: 10px; } .cv{ width: 100%; min-height: 100vh; background-color: #000016; } .cv-description{ color: #fff; font-size: 1.4em; font-weight: 500; } .links a:checked{ color: #f0f0f0; } p a{ color: #3a6cf4; text-decoration: none; } p a:hover{ color: #fff; } .cards-contact .content .icon{ font-size: 4.5em; } .info-2{ text-align: center; } .info-2 h3{ color: #000; font-size: 1.2em; font-weight: 700; margin: 10px; } .info-2 p{ font-size: 1.5em; font-weight: 700; } .footer{ background-color: #000016; color: #fff; padding: 2em; display: flex; justify-content: space-between; } .footer-title{ font-size: 1.3em; font-weight: 600; } .footer-title span{ color: #3a6cf4; } #menu{ width: 25; cursor: pointer; } @media (max-width: 576px) { .navi a { text-decoration: none; color: #3a6cf4; font-weight: 500; font-size: 0.1em; padding-right: 23px; } .main-btn { text-align: center; display: block; } .social-icons { text-align: center; margin: 20px 0; } } @media (max-width: 768px) { } @media (max-width: 992px) { } @media (max-width: 1200px) { } @media (max-width:300px){ body{ font-size: 10px; } } @media (max-width:1023px){ header{ padding: 12px 20px; } .navi a{ padding-left: 10px; } .title{ font-size: 1.8em; } section{ padding: 120px 20px; } .main-content h2{ font-size: 1em; } .main-content h3{ font-size: 1.0em; } .content{ flex-direction: column; align-items: center; } } @media (max-width:641px){ body{ font-size: 12px; } .main h2{ font-size: 1em; display: block; } .main-content h2{ font-size: 0.8em; } .main-content h3{ font-size: 1.4em; } }
  9. يبدو أن firebase قامت بتحديث التعامل مع PhoneAuthProvider | verifyPhoneNumber يمكنك زيارة التوثيق الرسمي من هنا ، لذلك حاول تجربة إزالة الكود التالي PhoneAuthProvider.getInstance().verifyPhoneNumber( number, 10, TimeUnit.SECONDS, TaskExecutors.MAIN_THREAD, mCallBack ); إلى PhoneAuthOptions options = PhoneAuthOptions.newBuilder(mAuth) .setPhoneNumber(phoneNumber) // Phone number to verify .setTimeout(60L, TimeUnit.SECONDS) // Timeout and unit .setActivity(this) // Activity (for callback binding) .setCallbacks(mCallBack) // OnVerificationStateChangedCallbacks .build(); PhoneAuthProvider.verifyPhoneNumber(options); ثم في ملف app\gradle يمكنك استدعاء السطر التالي في dependencies implementation 'androidx.browser:browser:1.2.0'
  10. يمكنك استخدام حزمة flutter_image_compress يمكنك العثور عليها من هنا , تعمل هذه الحزمة على ضغط الصورة , وهناك توثيق كامل يمكنك قراءته للتعامل مع هذه المكتبة و هذه المكتبة تعمل على كلا النظامين ios / android ، ويمكنك تثبيت الحزمة في مشروعك من خلال فتح ملف pubspec.ymal من خلال الأمر التالي dependencies: flutter_image_compress: ^1.0.0-nullsafety ويمكنك استدعاء المكتبة في الملف الذي تعمل عليه من خلال import 'package:flutter_image_compress/flutter_image_compress.dart'; كذلك تزودك هذه الحزمة ببعض الخصائص للتعامل مع الصورة كخاصية الدوران ( rotate ) ، وخاصية autoCorrectionAngle و خاصية التحكم بجودة الصورة و خاصية العرض و الارتفاع الأقصى للصورة .
  11. فئة ArrayList عبارة عن مصفوفة يمكن تغيير حجمها ويمكن العثور عليها في حزمة java.util. يتمثل الاختلاف بين المصفوفة المضمنة و ArrayList في Java في أن حجم المصفوفة لا يمكن تعديله (إذا كنت تريد إضافة عناصر إلى / من المصفوفة أو إزالتها منها ، فيجب عليك إنشاء واحدة جديدة). بينما يمكن إضافة العناصر وإزالتها من ArrayList وقتما تشاء. يختلف بناء الجملة أيضًا قليلاً: import java.util.ArrayList; ArrayList<String> cars = new ArrayList<String>(); فئة LinkedList متطابقة تقريبًا مع ArrayList ، فئة LinkedList هي مجموعة يمكن أن تحتوي على العديد من الكائنات من نفس النوع ، تمامًا مثل ArrayList ، تحتوي فئة LinkedList على جميع الأساليب نفسها مثل فئة ArrayList لأن كلاهما يقوم بتطبيق واجهة List. هذا يعني أنه يمكنك إضافة عناصر وتغيير العناصر وإزالة العناصر ومسح القائمة بنفس الطريقة ، ومع ذلك ، بينما يمكن استخدام فئة ArrayList وفئة LinkedList بالطريقة نفسها ، إلا أنهما تم بناؤهما بشكل مختلف تمامًا. كيف تعمل ArrayList تحتوي فئة ArrayList على مصفوفة منتظمة بداخلها. عند إضافة عنصر ، يتم وضعه في المصفوفة ، إذا لم تكن المصفوفة كبيرة بما يكفي ، يتم إنشاء مصفوفة جديدة أكبر لتحل محل القديم وتتم إزالة المجموعة القديمة. كيف تعمل LinkedList تخزن LinkedList عناصرها في "حاويات". تحتوي القائمة على رابط للحاوية الأولى ولكل حاوية رابط إلى الحاوية التالية في القائمة. لإضافة عنصر إلى القائمة ، يتم وضع العنصر في حاوية جديدة وترتبط تلك الحاوية بإحدى الحاويات الأخرى في القائمة. LinkedList توفر عدة طرق ( وظائف ) للقيام بعمليات معينة بشكل أكثر كفاءة: addFirst () يضيف عنصرًا إلى بداية القائمة. addLast () أضف عنصرًا إلى نهاية القائمة. removeFirst () قم بإزالة عنصر من بداية القائمة. removeLast () قم بإزالة عنصر من نهاية القائمة. getFirst () احصل على العنصر في بداية القائمة. getLast () احصل على العنصر في نهاية القائمة.
  12. يمكنك استخدام استضافة cloudways تمنحك مدة 3 أيام مجانية قبل الدفع لتجربة السيرفر الذي تختاره منها , لذلك يمكنك الاستفادة من هذه 3 أيام لتشغيل مشروعك و معاينته على رابط ويب تقدمه أيضا لك هذه الاستضافة بشكل مجاني.
  13. يمكنك زيارة api المقدم من dhl من هنا .
  14. يكون عن طريق الشركة المزودة لنظام التتبع و يكون الموقع مربوط ب api المزود من شركة التتبع و ويكون هذا api مزود ببيانات الشحنة و يمكن استخدام البيانات المرجعة من api في عرضها على موقعك بأي شكل تريدينه .من البيانات المرجعة من api ربما أول مكان وصول البضاعة و مكانها حالياً و وجهتها.
  15. يمكنك الضغط على أداوت ثم اختيار تصدير ثم تختاري كل المحتوى ثم تنزيل ملف التصدير .
  16. صراحة لم أجد حلاً لهذا الوقت ، ولكن أعمل على حل المشكلة و سأضع إجابة في أقرب وقت ممكن
  17. يمكنك مراجعة الإجابة السابقة لاحظ أنه يوجد مسافة فارغة بجانب كلمة reserved آخر شيء ، لذلك أخبرتك أن تتفقد و تحذف هذه المسافات.
  18. الخطأ لديك في كلمة innerHtml يجب أن تكون كلمة html جميعها أحرف كبيرة كالتالي innerHTML فيكون الكود الخاص بك هو document.getElementById("test").innerHTML="hello";
  19. هل يمكنك إضافة الكود الموجود في ملف index.js ؟
  20. لاحظ أنه يجب إزالة المسافات الفارغة كما في المثال الآتي esc_html__('Copyright All right reserved ','zon'); يجب أن تكون esc_html__('Copyright All right reserved','zon'); و يجب عليك إصلاح جميع الأخطاء التي موجودة بملف الترجمة و من ثم إعادة توليد ملف ar.mo.
  21. هل تأكدت بأن الزبون يستخدم اللغة العربية لموقعه ؟
  22. هاكرز أخلاقي دائما يبحث عن ثغرات امنية في مواقع او في اختراق حسابات بنكية و غيرها لكن تحت ضوابط و هي سلوكيات هذا الهاكر الأخلاقي ، فعندما يجد أي ثغرة على صعيد المثال يقوم مباشرة بالإعلان عنها لصاحب الموقع او الشركة ، لكن هناك من يقول تحت خفايا هذا السلوك هدف مادي ، لكن معظم الشركات الكبرى كالفيس بوك تقدم مكافأة على هذه المجهودات عند الإعلان بها لصاحب الموقع او الشركة، فسلوكيات الهاكر فلها ارتباط بضميره ، كما انه يكتسب مهارات و تقنيات تعطيه احترافية في هذا الميدان ،كما يجب لكل شخص يريد ان يصبح من الهاكرز يجب أولا ان يكون متفوقا في بعض لغات البرمجة لتسهيل عليه اكتشاف الثغرات الأمنية يدويا وستتمكن من كتابة استغلال للثغرات الأمنية بمفردك. ولتعلم هذا المجال يجب أن تدرس : اللغة الإنجليزية بشكل متقن. تعلم لغات البرمجة سواء اللغات التي تستخدم في برمجة المواقع أو التطبيقات و البرامج مثل PHP, Python, Nodejs وغيرها من لغات البرمجة. دراسة علم الكمبيوتر. دراسة علم الشبكات. تعلم Scripting Language. تعلم اختبار الاختراق. تعلم علم التشفير و الهندسة العكسية.
  23. تأكد من أنك تقوم بجلب قيمة id للعنصر المناسب مثال : <div id="test">Hsoub</div> وعند جلب العنصر باستخدام getElementById يمكنك جلبه بالطريقة التالية <script> var test = document.getElementById('test'); </script> ويمكنك تغيير قيمة هذا العنصر باستخدام جافا سكريبت بهذا الشكل <script> var test = document.getElementById('test'); test.innerHTML = "Hsoub Academy"; </script>
  24. يمكنك أيضا استخدام GTK في PHP حيث يمكنك تصفح الإضافة من هنا ، حيث هذه الإضافة PHP-GTK هي امتداد للغة برمجة PHP التي تنفذ روابط اللغة لـ GTK +. يوفر واجهة موجهة للكائنات لفئات ووظائف GTK + ويبسط بشكل كبير كتابة تطبيقات واجهة المستخدم الرسومية عبر الأنظمة الأساسية من جانب العميل ، يمكنك مراجعة توثيق هذه الإضافة بالكامل من هنا حتى تستطيعين استخدامها و معرفة كيفية صنع مثل هذه البرامج.
  25. تعطيك الشركة المزودة للنطاق وقت محدد لتجديد اشتراك النطاق و لكن إذا قمت بتجديد الاشتراك يبقى النطاق لك ، أما في حالة أنتهاء المدة المحددة من قبل الشركة المزودة للنطاق ولم تقم بتجديد الاشتراك يصبح النطاق متاح للجميع و يمكن لأي شخص حجزه.
×
×
  • أضف...