Lessons, what we have learned - جميع الدروس وماذا تعلمنا


  • File Explorer - مستخرج الملفات help
  • Task Manager - حركات المرور والمواقع المفتوحه help
  • Windows Basic Settings - اعدادات الاساسيه لويندوز Settings
  • Windows Security Settings - اعدادات الحمايه Windows Security settings
  • Control Panel Basics - منصه التحكم (حذف تطبيقات واداره) Control Panel
  • Disk Management - اداره جميع المساحات help
  • OS - أنظمة التشغيل:
    • Windows 10, 8.1, XP
    • Linux - نظام تشغيل يستخدم في بيئات متعددة، ويدعم مهام الاختراق.
  • Full-Advanced Windows Settings:

    إعدادات متقدمة لويندوز (ضغط shift عندما نعمل اعادة تشغيل).

  • GPU Drivers and Performance:

    ديسكات وأداء كرت الشاشة (Geforce Experience).

  • CMD - موجه الأوامر:
  • Firewall (جدار الحمايه): الجدار الناري هو نظام أمني يراقب ويُحكِم حركة البيانات بين الشبكات، لمنع الوصول غير المصرح به وحماية الأنظمة من التهديدات. له قوانين عند التهديدات مثل ايبي خصوصي. لرؤية صور جدار الحمايه.
  • IP (بروتوكول الإنترنت): عنوان رقمي يُستخدم لتحديد الأجهزة المتصلة بالشبكة وتمكين التواصل بينها.
  • LAN (الشبكة المحلية): شبكة تربط الأجهزة داخل منطقة جغرافية صغيرة، مثل المنزل أو المكتب، لتبادل البيانات بسرعة.
  • WAN (الشبكة الواسعة): شبكة تربط أجهزة أو شبكات عبر مسافات جغرافية كبيرة، مثل الإنترنت الذي يربط شبكات LAN متعددة في مناطق مختلفة.
  • لرؤية ال IP الخاص بك: نستخدم الأمر ipconfig.
  • لرؤية ال IP الخاص بموقع معين: نستخدم الأمر ping.
    مثال: ping google.com
    النتيجة: 142.250.75.78 (هذا هو الـ IP).
  • لتغيير كلمة المرور في حالة نسيانها:
    1. اضغط على مفتاح Shift ثم إعادة التشغيل.
    2. افتح موجه الأوامر (CMD) واذهب إلى C:\Windows\System32.
    3. استخدم الأمر ren Utilman.exe Utilman1.exe لتغيير اسم Utilman.exe.
    4. استخدم الأمر ren cmd.exe Utilman.exe لتغيير اسم cmd.exe.
    5. افتح موجه الأوامر من شاشة تسجيل الدخول واستخدم الأمر control userpasswords2.
    6. لإعادة كل شيء لحالته الأصلية: ren Utilman.exe cmd.exe ثم ren Utilman1.exe Utilman.exe.
    ملاحظة: موجه الأوامر هو CMD.
  • Understanding File Extensions & Associations: فهم امتدادات الملفات والربط بين البرامج
  • Disk Partitioning (Advanced Disk Management): تقسيم القرص (إدارة القرص المتقدمة)
  • Task Scheduling and Automation: جدولة المهام والأتمتة
  • File and Folder Permissions: أذونات الملفات والمجلدات
  • System Resource Monitoring & Optimizing: مراقبة موارد النظام وتحسين الأداء
  • Virtual Memory and Page File Management: إدارة الذاكرة الافتراضية وملف الصفحة
  • Advanced Search Features: ميزات البحث المتقدمة
  • What is a Network? - ما هي الشبكة؟
    Explanation of LAN & WAN - شرح الشبكات المحلية (LAN) والشبكات الواسعة (WAN).
  • IP Address and MAC Address - عنوان IP وعنوان MAC
    Understanding IP and MAC addresses - فهم عنوان IP وعنوان MAC.
  • How the Internet Works? - كيف يعمل الإنترنت؟
    Overview of data transfer over the internet - نظرة عامة على كيفية نقل البيانات عبر الإنترنت.
  • Routers, Switches, and Modems, Alfa adapters - الموجهات والمحولات والمودمات و Alfa adapters
    Basics of network hardware - أساسيات الأجهزة الشبكية.
  • Introduction to Bandwidth and Latency - مقدمة إلى عرض النطاق الترددي والزمن المتأخر
    Understanding bandwidth and latency in networks - فهم عرض النطاق الترددي والزمن المتأخر في الشبكات.
  • Intrusion Detection Systems (IDS) & Intrusion Prevention Systems (IPS) - أنظمة كشف التطفل (IDS) وأنظمة منع التطفل (IPS)
    Introduction to IDS and IPS - مقدمة لأنظمة كشف ومنع التطفل.
  • Access Control - التحكم في الوصول
    Methods of network access control - طرق التحكم في الوصول للشبكات.
  • Virtual Private Network (VPN) - الشبكة الافتراضية الخاصة (VPN)
    Basics of VPNs and their uses - أساسيات الشبكات الافتراضية الخاصة وفوائدها.
  • Data Encryption (SSL) & Wireless Security (WPA2, WPA3) & Email Security & Cloud Security - تشفير البيانات (SSL) وأمان الشبكات اللاسلكية (WPA2، WPA3) وأمان البريد الإلكتروني وأمان السحابة
    Overview of encryption and security protocols - نظرة عامة على بروتوكولات التشفير والأمان.
  • Example of how Hacking works - مثال على كيفية عمل الاختراق
    Basic illustration of hacking techniques - مثال بسيط لأساليب الاختراق.
  1. Introduction to System Backup and Recovery - مقدمة إلى النسخ الاحتياطي واستعادة النظام
    • Full Backup - النسخ الاحتياطي الكامل
    • Incremental Backup - النسخ الاحتياطي التدريجي
    • Differential Backup - النسخ الاحتياطي التفاضلي

مثال سريع: تخيل أن لديك 10 ملفات، وقمت بعمل نسخ احتياطي على مدار ثلاثة أيام:

  1. اليوم الأول: النسخ الاحتياطي الكامل — تم نسخ جميع الملفات الـ 10.
  2. اليوم الثاني: النسخ الاحتياطي التدريجي — تم نسخ الملفات الثلاثة التي تغيرت في اليوم الثاني فقط.
  3. اليوم الثالث: النسخ الاحتياطي التفاضلي — تم نسخ جميع التغييرات منذ النسخ الاحتياطي الكامل في اليوم الأول (ربما 4 ملفات إذا تغير ملف آخر).
  • Disk Cleanup and System Maintenance - تنظيف القرص وصيانة النظام
    • Using Disk Cleanup tools - استخدام أدوات تنظيف القرص
    • Managing startup programs for faster boot times - إدارة برامج بدء التشغيل لتسريع أوقات الإقلاع
    • Uninstalling unused programs and managing system space - إلغاء تثبيت البرامج غير المستخدمة وإدارة مساحة النظام (دليل Revo)
  • Installing and Managing Software - تثبيت البرامج وإدارتها
    1. How to check for safe software sources (download from trusted sources) - كيفية التحقق من مصادر البرامج الآمنة (التحميل من مصادر موثوقة)

    رابط للتحقق من البرامج الضارة: Virus Total

    1. All Common Network Ports and Their Uses - جميع المنافذ الشائعة للشبكة واستخداماتها (شرح مختصر)
    2. How SSL/TLS Works - كيفية عمل SSL/TLS
    3. Symmetric vs. Asymmetric Encryption - التشفير المتماثل مقابل التشفير غير المتماثل
    4. Root (Android) , Jailbreak (iPhone) - الروت للأندرويد وجيلبريك للآيفون
    1. التشفير المتماثل مقابل التشفير غير المتماثل (متقدم، عملية الهكر) - Symmetric vs. Asymmetric Encryption (Advanced, Hacker Process) 30/30 علامة
    2. الروت للأندرويد وجيلبريك للآيفون - Root (Android), Jailbreak (iPhone) 10/10
    3. أين يقوم المبرمجون عادةً ببرمجة المواقع الإلكترونية، الألعاب - Where programmers usually program websites, games
    4. أساسيات Visual Studio Code - Visual Studio Code Basics
    5. مطور الويب (تطوير الواجهة الأمامية، تطوير الواجهة الخلفية، تطوير كامل الستاك) - Web Developer (Front-End Development, Back-End Development, Full-Stack Development)
    6. عملية التعلم، ماذا سنتعلم؟
      • HTML
      • CSS
      • JavaScript
    7. ما هو HTML؟ وما هي استخداماته؟ - أساسيات HTML
      • <h1> - <h6>: تستخدم لتحديد العناوين من الأكبر (<h1>) إلى الأصغر (<h6>). مثال: <h1>العنوان الرئيسي</h1>
      • <!DOCTYPE html>: تعرّف نوع المستند وإصدار HTML المستخدم.
      • <p>: وسم الفقرة لإضافة نصوص عامة في الصفحة. مثال: <p>هذه فقرة.</p>
      • <img>: لإضافة صورة، ويحتاج إلى خاصية src لتحديد مسار الصورة. مثال: <img src="image.jpg" alt="الوصف">
      • <audio>: يستخدم لتضمين ملفات الصوت مع خاصية src أو باستخدام عناصر <source> داخلية. مثال: <audio controls><source src="audio.mp3"></audio>
      • <video>: لتضمين ملفات الفيديو، وهو مشابه لـ <audio>. مثال: <video controls><source src="video.mp4"></video>
      • <body>: يحتوي على المحتوى الأساسي للصفحة.
      • <html>: العنصر الجذري الذي يحيط بكل محتوى HTML.
      • <head>: يحتوي على معلومات وبيانات تعريفية عن المستند، مثل الروابط والعنوان.

    2 Exams You Must Do: اختبارات يجب أن تقوم بهما

    First Exam: الاختبار الأول

    Use all these HTML tags within 15 minutes: استخدم جميع هذه العلامات في HTML خلال 15 دقيقة

    <!DOCTYPE html>
    <html>
      <head></head>
      <body>
        <a href="" target="_blank">hello</a>
        <p></p>
        <h1> إلى <h6>
        <hr>
        <br>
        <img src="" width="" height="">
        <video controls src="" width="" height=""></video>
        <audio controls src=""></audio>
    </html>

    Result: Here (Link to their result page)

    Exam Result: 8/10

    Second Exam:

    Use all HTML tags and CSS basics (Best website you can build in 30 minutes):

    <!DOCTYPE html>
    <html>
      <head></head>
      <body>
        <a href="" target="_blank">hello</a>
        <p></p>
        <h1> إلى <h6>
        <h1 style="text-align: center"></h1>
        <h1 style="text-align: left"></h1>
        <h1 style="text-align: right"></h1>
        <hr>
        <br>
        <img src="" width="" height="">
        <video controls src="" width="" height=""></video>
        <audio controls src=""></audio>
    </html>

    Result: Here (Link to their result page)

    Based on your exam results, you are now ready to code in a comfortable environment like VS Code.

    Download VS Code here: click me

    Instructions:

    1. Use all HTML tags and CSS that you have learned, which are:

    <!DOCTYPE html>
    <html>
      <head></head>
      <body>
        <a href="" target="_blank">hello</a>
        <p></p>
        <h1> إلى <h6>
        <h1 style="text-align: center"></h1>
        <h1 style="text-align: left"></h1>
        <h1 style="text-align: right"></h1>
        <hr>
        <br>
        <img src="" width="" height="">
        <video controls src="" width="" height=""></video>
        <audio controls src=""></audio>
        <!--text formatting-->
        <p>This is <b>bold</b> text</p>
        <p>This is <i>italic</i> text</p>
        <p>This is <u>underlined</u> text</p>
        <p>This is <s>strikethrough</s> text</p>
        <p>This is <sub>subscript</sub> text</p>
        <p>This is <sup>superscript</sup> text</p>
        <p>This is <code>123</code> text</p>
        <p>This is <ins>inserted</ins> text</p>
        <p>This is <del>deleted</del> text</p>
        <!--lists-->
        <h2>Unordered List (bulleted)</h2>
        <ul>
          <li>Item 1</li>
          <li>Item 2</li>
          <li>Item 3</li>
        </ul>
        <h2>Ordered List (numbered)</h2>
        <ol>
          <li>First item</li>
          <li>Second item</li>
          <li>Third item</li>
        </ol>
        <h2>Description List</h2>
        <dl>
          <dt>Term 1</dt>
          <dd>Description for term 1</dd>
          <dt>Term 2</dt>
          <dd>Description for term 2</dd>
          <dt>Term 3</dt>
          <dd>Description for term 3</dd>
        </dl>

    2. First, give an example of how every tag works with examples:

    Build a small project using all the tags listed above. This will ensure you understand how they are used.

    3. Build the best website you can using the tags and CSS basics:

    In this task, use your creativity to build a website that combines all the tags and basic CSS styling.

    4. Final Project:

    You must complete this project using just the tags listed above. Here

    شرح كيفية استخدام العناصر المختلفة

    مثال على كيفية استخدام <!DOCTYPE html>
    يستخدم هذا الوسم في بداية الصفحة للإشارة إلى أن الوثيقة هي HTML5. هو بمثابة تعريف للمتصفح ليعرف نوع المحتوى.

    مثال على كيفية استخدام <html>
    يتم استخدامه لتحديد بداية الوثيقة HTML، وهو العنصر الجذري الذي يحتوي على جميع محتويات الصفحة.

    مثال على كيفية استخدام <head>
    وسم <head> يحتوي على معلومات عن الصفحة مثل العنوان والروابط الخارجية كالأوراق الأنماط (CSS) أو السكربتات.

    مثال على كيفية استخدام <title>
    يتم وضع العنوان داخل وسم <title> في داخل عنصر <head> ليظهر في شريط عنوان المتصفح:

    <title>عنوان الصفحة</title>

    مثال على كيفية استخدام <body>
    وسم <body> يحتوي على محتوى الصفحة الذي يظهر للمستخدم، مثل النصوص والصور والمحتوى المتنوع.

    مثال على كيفية استخدام <a>
    يستخدم لإنشاء روابط تشعبية. على سبيل المثال، لفتح رابط في نافذة جديدة، نكتب:

    <a href="https://www.example.com" target="_blank">فتح الرابط في نافذة جديدة</a>

    مثال على كيفية استخدام <p>
    يستخدم وسم <p> لتحديد الفقرات النصية، على سبيل المثال:

    <p>هذه فقرة نصية</p>

    مثال على كيفية استخدام <h1> إلى <h6>
    تستخدم هذه الوسوم لتحديد العناوين من المستوى 1 إلى 6. على سبيل المثال:

    <h1>عنوان رئيسي</h1>

    مثال على كيفية استخدام <hr>
    وسم <hr> يستخدم لإدراج خط أفقي يفصل بين المحتويات.

    <hr>

    مثال على كيفية استخدام <br>
    يستخدم وسم <br> لإضافة سطر جديد داخل الفقرة أو النص.

    <br>

    مثال على كيفية استخدام <img>
    وسم <img> يستخدم لعرض صورة في الصفحة. على سبيل المثال:

    <img src="image.jpg" width="100" height="100">

    مثال على كيفية استخدام <video>
    يستخدم وسم <video> لعرض فيديو في الصفحة. على سبيل المثال:

    <video controls src="video.mp4" width="320" height="240"></video>

    مثال على كيفية استخدام <audio>
    يستخدم وسم <audio> لعرض صوتيات في الصفحة. على سبيل المثال:

    <audio controls src="audio.mp3"></audio>

    مثال على كيفية استخدام <ul> (قائمة غير مرتبة)
    يتم استخدام وسم <ul> لإنشاء قائمة غير مرتبة، مثلاً:

    <ul>
          <li>العنصر 1</li>
          <li>العنصر 2</li>
          <li>العنصر 3</li>
        </ul>

    مثال على كيفية استخدام <ol> (قائمة مرتبة)
    يتم استخدام وسم <ol> لإنشاء قائمة مرقمة، على سبيل المثال:

    <ol>
          <li>العنصر الأول</li>
          <li>العنصر الثاني</li>
          <li>العنصر الثالث</li>
        </ol>

    مثال على كيفية استخدام <dl> (قائمة تعريفية)
    وسم <dl> يُستخدم لإنشاء قائمة تعريفية. على سبيل المثال:

    <dl>
          <dt>المصطلح 1</dt>
          <dd>تعريف المصطلح 1</dd>
          
          <dt>المصطلح 2</dt>
          <dd>تعريف المصطلح 2</dd>
          
          <dt>المصطلح 3</dt>
          <dd>تعريف المصطلح 3</dd>
        </dl>

    شرح الجداول في HTML وكيفية استخدامها بأنواعها المختلفة

    Work Hours Table

    في هذا المثال، نقوم بعرض جدول مواعيد العمل الأسبوعية باستخدام عناصر HTML للجداول:

    hello every body
    Monday Tuesday Wednesday Thursday Friday
    9:00 AM - 5:00 PM 9:00 AM - 5:00 PM 9:00 AM - 5:00 PM 9:00 AM - 5:00 PM 9:00 AM - 5:00 PM
    
        <!--tables-->
        <h2>Work Hours Table</h2>
        <table bgcolor="black">
          <tr>
            <th colspan="5" style="color: azure;">hello every body</th>
          </tr>
          <tr aria-colspan="5" bgcolor="gray">
            <th rowspan="7">Monday</th>
            <th>Tuesday</th>
            <th>Wednesday</th>
            <th>Thursday</th>
            <th>Friday</th>
          </tr>
          <tr bgcolor="lightgray">
            <td>9:00 AM - 5:00 PM</td>
            <td>9:00 AM - 5:00 PM</td>
            <td>9:00 AM - 5:00 PM</td>
            <td>9:00 AM - 5:00 PM</td>
            <td>9:00 AM - 5:00 PM</td>
          </tr>
        </table>
                    

    Table with Colspan and Rowspan

    في هذا المثال، يتم استخدام خاصيتي colspan و rowspan لترتيب الأعمدة والصفوف بشكل مختلف:

    Name Subject
    Math English
    John 95 88
    Anna 91 85
    
        <!--tables with colspan and rowspan-->
        <h2>Table with Colspan and Rowspan</h2>
        <table border="1">
          <tr>
            <th rowspan="2">Name</th>
            <th colspan="2">Subject</th>
          </tr>
          <tr>
            <td>Math</td>
            <td>English</td>
          </tr>
          <tr>
            <td>John</td>
            <td>95</td>
            <td>88</td>
          </tr>
          <tr>
            <td>Anna</td>
            <td>91</td>
            <td>85</td>
          </tr>
        </table>
                    

    شرح الجداول المعقدة، الميتاداتا، القسم (div)، ووسم النصوص (span)

    Complex Table Example

    في هذا المثال، يتم عرض جدول باستخدام خصائص rowspan و colspan لإدارة الخلايا:

    1 2
    3
    4 5
    6
    
        <table border="1" cellspacing="0" cellpadding="0">
          <tr>
            <td rowspan="2" width="40" height="50">1</td>
            <td rowspan="2" width="50">2</td>
          </tr>
          <tr>
            <td width="120">3</td>
          </tr>
          <tr>
            <td colspan="2" rowspan="4">4</td>
            <td colspan="8" height="10">5</td>
          </tr>
          <tr>
            <td colspan="8" height="10">6</td>
          </tr>
        </table>
                    

    What is a Span?

    Span هو وسم يُستخدم لتحديد جزء معين من النصوص لإجراء تعديل معين عليه، مثل إضافة لون أو تنسيق خاص.

    Example:

    
        <p>This is a <span style="color: red;">highlighted</span> text.</p>
                    

    What is a Div?

    Div هو وسم يُستخدم لتحديد قسم معين في الصفحة يمكن تخصيصه أو ترتيبه كما ترغب.

    Example:

    
        <div style="background-color: darkcyan;">
          <p>This is a paragraph inside a div.</p>
        </div>
                    

    What is Metadata?

    الميتاداتا هي معلومات عن صفحة الويب تساعد في تحسين محركات البحث (SEO) وتقديم معلومات إضافية حول المحتوى.

    Types of Metadata:

    • <meta>: تستخدم لإضافة معلومات إضافية عن الصفحة مثل الوصف والكلمات المفتاحية.
    • <meta charset>: يحدد ترميز الأحرف المستخدم في الصفحة.
    • <meta name="viewport">: يتحكم في كيفية عرض الصفحة على الأجهزة المحمولة.
    • <meta name="description">: يضيف وصفاً مختصراً لصفحة الويب يظهر في نتائج محركات البحث.
    • <meta name="keywords">: يحدد كلمات مفتاحية تستخدم لتحسين محركات البحث.
    • <meta name="author">: يحدد مؤلف الصفحة.

    Example of Metadata:

    
            <head>
              <meta charset="UTF-8">
              <meta name="viewport" content="width=device-width, initial-scale=1">
              <meta name="description" content="This is an example of a meta description">
              <meta name="keywords" content="HTML, metadata, tutorial">
              <meta name="author" content="Your Name">
              <title>My Web Page</title>
            </head>
                        

    Iframes

    An iframe يُستخدم لعرض موقع ويب داخل صندوق، مما يسمح بتضمين صفحة ويب داخل أخرى. ومع ذلك، يُستخدم في كثير من الأحيان بطرق مشبوهة وتقنيات اختراق، مثل هجمات التصيد أو تحميل محتوى ضار دون علم المستخدم

    Example:

    
            <iframe src="https://www.example.com" width="300" height="200"></iframe>
                    

    Buttons

    الأزرار في تُستخدم لتشغيل إجراءات معينة عند الضغط عليها، مثل إرسال البيانات إلى الخادم أو تنفيذ أحداث برمجية باستخدام

    أنواع الأزرار:

    • Submit: لإرسال البيانات في النموذج.
    • Reset: لإعادة ضبط القيم إلى حالتها الافتراضية.
    • Button: زر عادي يُستخدم مع JavaScript لإضافة وظائف معينة.

    مثال:

    
            <button>Click Me</button>
                    

    Input جميع انواع

    Input انواع نتيجه
    <input type="text" placeholder="Enter text">
    <input type="password" placeholder="Enter password">
    <input type="submit" >
    <input type="reset" >
    <input type="checkbox">
    <input type="radio">
    <input type="date">
    <input type="file">

    Forms

    النماذج في HTML تُستخدم لجمع بيانات المستخدم وإرسالها إلى الخادم لمعالجتها.

    المثال:

    
            <form>
                <label for="amer">First Name:</label>
                <input type="text" id="amer" placeholder="Here">
        
                <label for="pass">Password:</label>
                <input type="password" id="pass" placeholder="pass here">
            </form>
                    

    شرح:

    • <form>: لإنشاء نموذج لجمع البيانات.
    • <label>: لوضع عنوان لحقل الإدخال.
    • <input>: لإنشاء حقول إدخال مختلفة (مثل النص وكلمة المرور).

    أنواع الإدخالات:

    • Text: إدخال نصوص.
    • Password: إدخال كلمة المرور.
    • Email: إدخال بريد إلكتروني.
    • Number: إدخال أرقام.
    • File: تحميل الملفات.

    اصنع موقع يحتوي على جميع Inputs

    نيتجتك (للملف الذي تم صنعه بناء على السؤال):

    اضغط هنا لرؤيه النتيجه
    
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Document</title>
    </head>
    <body>
    
    <h1 style="text-align: center">Achievement</h1>
    <dl>
        <dt style="color: blue;">Achievement:</dt>
        <dd style="color: rgb(0, 255, 21);">is a term that represents the successful completion of a goal or task through effort,
            dedication, and perseverance. It can range from small daily accomplishments,
            like organizing your workspace, to major life milestones, such as earning a degree or launching a business.</dd>
    </dl>
    
    <hr>
    
    <h2>Enter your information to access the site:-</h2>
    <form>
        <label for="amer">First Name:</label>
        <input type="text" id="amer" placeholder="Here">
    
        <br><br>
        <label for="pass">Last Name:</label>
        <input type="text" id="pass" placeholder="pass here">
        <br>
    
        <input type="reset">
        <a href="https://omarkadan.github.io/guide-amer/">
            <input type="button">
        </a>
    </form>
    
    <br><br>
    
    <form>
        <label for="amer">Your Email:</label>
        <input type="email" id="amer" placeholder="Here">
    
        <br><br>
        <label for="pass">Password:</label>
        <input type="password" id="pass" placeholder="pass here">
    </form>
    
    <br><br>
    
    <form>
        <label for="pass">Your Date of Birth:</label>
        <input type="date" id="pass" placeholder="pass here">
    </form>
    
    <br>
    <h3>You can agree by clicking this button <input type="checkbox"></h3>
    
    <br>
    <h4>Write your favorite file here</h4>
    <input type="file">
    
    </body>
    </html>
                

    Explaining Required Attribute

    عند استخدام الخاصية required في الحقول، يتم التأكد من إدخال المستخدم بيانات في هذه الحقول قبل إرسال النموذج. إذا ترك المستخدم الحقل فارغاً، تظهر رسالة تنبيهية.

    مثال:

    
    <form>
        <label for="name">Name:</label>
        <input type="text" id="name" required>
    
        <label for="password">Password:</label>
        <input type="password" id="password" required>
    
        <input type="submit" value="Submit">
    </form>
                

    النتيجة:

    اضغط على زر "Submit" دون إدخال البيانات لرؤية النتيجة:

    إذا لم يتم إدخال أي بيانات، ستظهر الرسالة التنبيهية: "هذا الحقل مطلوب."


    Method Types (GET vs POST)

    في النماذج، تُستخدم الخاصيتان method="GET" وmethod="POST" لتحديد كيفية إرسال البيانات:

    مثال:

    
    <form method="POST" action="submit.php">
        <label for="username">Username:</label>
        <input type="text" id="username" name="username" required>
    
        <label for="password">Password:</label>
        <input type="password" id="password" name="password" required>
    
        <input type="submit" value="Login">
    </form>
                

    النتيجة:

    عند الإرسال باستخدام POST، سيتم إرسال البيانات إلى الملف submit.php.

    Input Training and Testing

    يمكنك عرض جميع المدخلات والتدريب عليها من خلال الرابط التالي:

    اضغط هنا

    HTTP VS HTTPS

    Hypertext Transfer Protocol , HTTP :

    وبيُستخدم لنقل البيانات بين المتصفح والخادم، لكن بدون تشفير مما يعني أن البيانات ممكن تكون مكشوفة لأي شخص يراقب الشبكة.

    Hypertext Transfer Protocol Secure , HTTPS :

    نوع التشفير : SSL

    حيث يُضيف تشفير ، مما يُحمي البيانات من السرقة أو التعديل أثناء انتقالها بين المستخدم والخادم.

    What is HTTP Request?

    طلب الـ HTTP هو الأساس اللي بيخلي المتصفح يتواصل مع السيرفر. ببساطة، المتصفح بيطلب البيانات (الصفحة) من السيرفر، والسيرفر بيرد عليها بالبيانات المطلوبة (HTTP Response).

    الطلب ممكن يكون عن طريق عدة أنواع (Methods) مثل:

    أدوات لكشف وتحليل الـ HTTP Requests

    لغة CSS

    هذه اللغة مخصصة للتنسيق. تخيل أن لديك منزلًا، فإن CSS تضيف الزخرفة لهذا المنزل.

    CSS Example Image

    3 Types of CSS

    1. Inline CSS:

    <h1 style="color: white;">hello</h1>

    Result:

    hello

    2. Internal CSS:

    <style>
    h1 {
      background-color: rgba(163, 192, 202, 0.5);
      color: #f1e9e9;
      text-align: left;
      display: inline;
    }
    </style>

    Result:

    Hello with Internal CSS

    External CSS

    External CSS is stored in a separate file and linked to the HTML file using the <link> tag. This method keeps HTML clean and makes styling easier to manage.

    <head>
      <link rel="stylesheet" href="style.css">
    </head>

    Example of CSS in the style.css file:

    h1 {
      background-color: rgba(163, 192, 202, 0.5);
      color: #f1e9e9;
      text-align: left;
      display: inline;
    }

    Result:

    Hello with External CSS

    Linking HTML & CSS:

    <link rel="stylesheet" href="style.css">

    Using Custom Fonts

    Option 1: Linking Google Fonts in HTML

    <link href="https://fonts.googleapis.com/css2?family=Amiri:ital,wght@0,400;0,700;1,400;1,700&display=swap" rel="stylesheet">

    بعد إضافة السطر أعلاه إلى عنصر <head>، يمكن استخدام الخط في CSS:

    h1 {
      font-family: 'Amiri', serif;
    }

    Option 2: Using @import in External CSS

    @import url('https://fonts.googleapis.com/css2?family=Amiri:ital,wght@0,400;0,700;1,400;1,700&display=swap');
    h1 {
      font-family: 'Amiri', serif;
    }

    CSS Aligning Form in Center

    لجعل نموذج أو عنصر يظهر في وسط الصفحة، يمكنك استخدام الخصائص التالية في CSS:

    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);

    شرح الخصائص:

    CSS Colors

    الألوان في CSS يمكن تطبيقها على الخلفيات والعناصر النصية باستخدام الخصائص:

    مثال:

    body {
      background-color: #f0f0f0;
      color: #333;
    }

    CSS Borders

    لإظهار الحدود بمختلف أنواعها، قمنا بفصل كل نوع داخل جدول مخصص:

    Border: Solid

    Solid Border

    Border: Dotted

    Dotted Border

    Border: Dashed

    Dashed Border

    Border: Double

    Double Border

    Border: Rounded

    Rounded Corners

    فوق في عندك انواع حدود وهون بتلاقيهن كلهن للتجربه : اضغط هون

    Example for External CSS Linking

    لتوصيل CSS خارجي بملف HTML:

    <head>
      <link rel="stylesheet" href="style.css">
    </head>

    وفي ملف CSS، يمكن تطبيق الأسلوب التالي:

    h1 {
      background-color: rgba(163, 192, 202, 0.5);
      color: #f1e9e9;
      text-align: left;
      display: inline;
    }

    Hardware Components

    CPU (معالج)

    CPU

    Fans (مراوح)

    Fans

    Hard Drive & SSD (قرص صلب و SSD)

    Hard Drive and SSD

    Motherboard (اللوحة الأم)

    Motherboard

    RAM (ذاكرة عشوائية)

    RAM

    Power Supply (مزود الطاقة)

    Power Supply

    شرح مكونات الهاردوير

    كيف تعمل وحدة المعالجة المركزية و GPU و RAM؟

    اليوم سنتعلم ونراجع عن التشفير المتماثل والغير المتماثل

    التشفير المتماثل: في التشفير المتماثل، نستخدم نفس المفتاح لتشفير البيانات وفك تشفيرها. يعني اللي بيشفر هو نفسه اللي بيفك التشفير. لازم يكون عندك نفس المفتاح بين الشخصين المتصلين عشان يقدروا يتبادلوا المعلومات بطريقة آمنة.

    التشفير الغير متماثل: أما في التشفير الغير متماثل، فالموضوع مختلف. بيستخدموا زوجين من المفاتيح: مفتاح عام (public key) للتشفير، ومفتاح خاص (private key) لفك التشفير. المفتاح العام بيفيد في التشفير ولكن ما فيك تقدر تفك التشفير إلا بالمفتاح الخاص.

    الفرق بين التشفير المتماثل والغير متماثل

    التشفير المتماثل التشفير الغير متماثل
    يستخدم نفس المفتاح للتشفير والفك يستخدم مفتاح عام للتشفير ومفتاح خاص للفك
    أسرع وأقل تعقيد أبطأ وأكثر تعقيدًا
    يحتاج لنقل المفتاح بطريقة آمنة المفتاح العام يمكن نشره للجميع

    صوره كيف يعمل التشفير المتماثل:

    اضغط هنا لوضع صورة التشفير المتماثل

    صوره كيف يعمل التشفير الغير المتماثل:

    اضغط هنا لوضع صورة التشفير الغير المتماثل

    ماذا لو يوجد مخترق في نصف اتصالنا؟

    في حال وجود مخترق في منتصف الاتصال، قد يتمكن من التنصت على البيانات، ولكن في التشفير الغير متماثل، حتى لو قام المهاجم بالتنصت على الاتصال، فلن يكون قادرًا على فك تشفير البيانات لأن المفتاح الخاص لا يمكن الوصول إليه.

    اضغط هنا لوضع رابط الصورة الخاصة بالتنصت أو الهجوم

    HTML Elements that we learned:

    <html> جذر مستند HTML
    <head> رأس المستند
    <body> جسم الصفحة
    <title> عنوان الصفحة
    🔹 العناوين والنصوص
    <h1> إلى <h6> عناوين (من الأكبر إلى الأصغر)
    <p> فقرة
    <br> كسر سطر
    <hr> خط أفقي
    <blockquote> اقتباس طويل
    <pre> نص مسبق التنسيق
    🔹 التنسيق
    <b> نص غامق
    <i> نص مائل
    <strong> نص مهم (غامق دلالي)
    <em> نص مؤكد (مائل دلالي)
    <mark> تمييز نص
    <small> نص صغير
    <sub> نص منخفض (تحتي)
    <sup> نص مرتفع (فوقي)
    <u> نص مسطر
    <code> كود برمجي
    🔹 الروابط
    <a> رابط تشعبي
    🔹 الصور والوسائط
    <img> صورة
    <audio> صوت
    <video> – فيديو
    <source> – مصدر وسائط
    <track> – ترجمات
    🔹 القوائم
    <ul> – قائمة غير مرتبة
    <ol> – قائمة مرتبة
    <li> – عنصر قائمة
    <dl> – قائمة تعريفية
    <dt> – مصطلح
    <dd> – تعريف
    🔹 الجداول
    <table> – جدول
    <thead> – رأس الجدول
    <tbody> – جسم الجدول
    <tfoot> – تذييل الجدول
    <tr> – صف
    <th> – خلية رأس
    <td> – خلية بيانات
    <caption> – عنوان الجدول
    <col> – عمود
    <colgroup> – مجموعة أعمدة
    🔹 النماذج
    <form> – نموذج
    <input> – إدخال
    <textarea> – مساحة نص
    <button> – زر
    <select> – قائمة منسدلة
    <option> – خيار
    <label> – تسمية
    <fieldset> – مجموعة من عناصر النموذج
    <legend> – عنوان حقل النموذج
    🔹 عناصر القسم
    <div> – تقسيم (عنصر عام)
    <span> – عنصر مضمن
    <header> – رأس القسم
    <footer> – تذييل
    <main> – المحتوى الرئيسي
    <section> – قسم
    <article> – مقالة
    <nav> – تنقل
    <aside> – ملاحظة جانبية
    🔹 عناصر البرمجة والنصوص البرمجية
    <script> – جافاسكريبت
    <noscript> – محتوى بديل إن لم تُفعّل الجافاسكريبت
    🔹 عناصر البيانات الوصفية
    <meta> – بيانات وصفية
    <link> – رابط خارجي (مثل CSS)
    <style> – أنماط CSS
    🔹 عناصر متقدمة وتفاعلية
    <details> – تفاصيل قابلة للفتح والإغلاق
    <summary> – ملخص للتفاصيل
    <dialog> – مربع حوار
    <canvas> – رسم بياني
    <svg> – رسومات SVG

    Login Pages:

    في صفحات تسجيل الدخول نقوم باستخدام النماذج (forms) وحقول الإدخال (inputs) والتسميات (labels) والأزرار (buttons).

    <form>
      <div>
        <label>Username</label>
        <input name="username" type="text" required>
      </div>

      <div>
        <label>Password</label>
        <input name="password" type="password" required>
      </div>
    </form>

    نتيجة الكود:

    Explained elements of CSS:

    /* style.css */

    body {
      margin: 0;
      min-height: 100vh;
      display: flex;
      justify-content: center;
      align-items: center;
      background: linear-gradient(to right, red, blue);
      background-attachment: fixed;
    }

    .form-container {
      width: 100%;
      max-width: 400px;
      padding: 1rem;
    }

    #ameer {
      background-color: aliceblue;
      border: 1px solid #444;
      border-radius: 8px;
      padding: 2rem;
      box-shadow: 0 2px 8px rgba(0,0,0,0.2);
      text-align: center;
    }

    #ameer div {
      margin-bottom: 1rem;
    }

    #ameer label {
      display: block;
      margin-bottom: 0.5rem;
      font-weight: bold;
    }

    #ameer input[type="text"],
    #ameer input[type="password"] {
      width: 100%;
      padding: 0.5rem;
      box-sizing: border-box;
    }

    #login {
      margin-top: 1rem;
    }

    #login input[type="submit"] {
      width: 100%;
      padding: 0.75rem;
      border: none;
      border-radius: 4px;
      background: #007BFF;
      color: white;
      font-size: 1rem;
      cursor: pointer;
    }

    #login input[type="submit"]:hover {
      background: #0056b3;
    }

    👇 جميع شرح البروتوكلات هنا

    Download

    CSS Menus

    1. هيكل القائمة (HTML)

    <div class="menu-container">
      <div class="hover-zone"></div>

      <div class="menu">
        <div class="menu-content">
          <div class="logo">Direct</div>
          <div class="links">
            <a href="#">🏠 Home</a>
            <a href="#">📄 About</a>
            <a href="#">📞 Contact</a>
            <a href="#">⚙️ Settings</a>
          </div>
        </div>
        <div class="menu-divider"><span>▼</span></div>
      </div>
    </div>

    2. منطقة التفعيل (.hover-zone)

    .hover-zone {
      position: fixed;
      top: 0;
      width: 100%;
      height: 20px;
      z-index: 1;
    }
    • position: fixed; تجعل العنصر ثابتًا بالنسبة للنافذة مهما تم التمرير.
    • top: 0; تضع العنصر في أعلى الصفحة بشكل دائم.
    • width: 100%; تمتدّ هذه المنطقة بعرض كامل نافذة المتصفح.
    • height: 20px; يحدد ارتفاع المنطقة بـ20 بكسل؛ كمساحة تفعيل للقائمة.
    • z-index: 1; تضمن بقاء المنطقة فوق العناصر الأخرى حتى تكون فعّالة.

    3. تصميم القائمة وإخفاؤها (.menu)

    .menu {
      position: fixed;
      top: -65px; /* يخفي القائمة خارج الشاشة */
      left: 0;
      width: 100%;
      background-color: rgba(196, 147, 124, 0.7);
      transition: top 0.3s ease;
      z-index: 1;
    }
    • position: fixed; تثبيت القائمة بالنسبة للنافذة بحيث لا تتأثر بالتمرير.
    • top: -65px; وضعها فوق الشاشة بمقدار 65px لإخفائها.
    • left: 0; يبدأ مكان القائمة من الجهة اليسرى للنافذة.
    • width: 100%; تمديد القائمة بعرض كامل نافذة المتصفح.
    • background-color: rgba(196, 147, 124, 0.7); إعطاء خلفية نصف شفافة بلون ترابي هادئ.
    • transition: top 0.3s ease; حركة سلسة عند تغيير قيمة top لإظهار أو إخفاء القائمة.
    • z-index: 1; ضمان بقاء القائمة فوق بقية المحتوى.

    4. إظهار القائمة عند المرور فوق (.menu-container:hover .menu)

    .menu-container:hover .menu {
      top: 0; /* تظهر القائمة في أعلى الصفحة */
    }

    لاظهار القائمه من فوق

    5. تنسيق محتوى القائمة

    .menu-content {
      max-width: 1200px;
      margin: 0 auto;
      padding: 20px 30px;
      display: flex;
      justify-content: space-between;
      align-items: center;
    }

    .logo {
      font-size: 1.8rem;
      color: #312d2d;
    }

    .links a {
      font-size: 1.1rem;
      text-decoration: none;
      color: #312d2d;
      border-radius: 8px;
      padding: 6px 12px;
      transition: background-color 0.3s ease;
      margin-left: 12px;
    }

    .links a:hover {
      background-color: rgba(0, 0, 0, 0.1);
    }
    • display: flex; ترتيب الشعار وروابط التنقل أفقيًا.
    • justify-content: space-between; تباعد العناصر بين الطرفين الأيمن والأيسر.
    • align-items: center; محاذاة العناصر عموديًا في وسط القائمة.
    • .logo: حجم الخط 1.8rem ولون الشعار داكن لسهولة القراءة.
    • .links a: ضبط حجم الخط، إزالة التسطير الافتراضي، منح حدود منحنية، وتباعد عند المرور على الرابط.

    6. تصميم الفاصل (Divider) والرمز ↓ (.menu-divider)

    .menu-divider {
      position: relative;
      text-align: center;
      margin-top: 10px;
    }

    .menu-divider::before {
      content: "";
      position: absolute;
      top: 50%;
      left: 0;
      width: 100%;
      height: 1px;
      background-color: #312d2d;
      z-index: 1;
    }

    .menu-divider span {
      position: relative;
      background-color: rgba(196, 147, 124, 0.7);
      padding: 0 10px;
      font-size: 1rem;
      color: #312d2d;
      z-index: 2;
    }
    • position: relative; تمكّن عنصراً فرعياً من التنسيق بناءً على مواقع العنصر الحالي.
    • ::before ينشئ خطاً أفقياً كامل العرض خلف العنصر.
    • top: 50%; يضع الخط في منتصف ارتفاع الحاوية.
    • span فوق الخط يسمح بعرض السهم () بطريقة واضحة وجميلة.