كيفية إرسال واستقبال البيانات باستخدام نماذج HTML و PHP

تمت الكتابة بواسطة: عبد الحكيم

تارخ آخر تحديث: 18 سبتمبر 2024

محتوى المقال

كيفية إرسال واستقبال البيانات باستخدام نماذج HTML و PHP

إرسال واستقبال البيانات باستخدام نماذج HTML و PHP هو جزء أساسي من تطوير الويب، حيث يستخدم لجمع المعلومات من المستخدمين مثل إدخالات النموذج، ثم معالجتها باستخدام PHP. في هذا المقال، سنتعرف على كيفية إرسال البيانات من نموذج HTML إلى ملف PHP لاستقبال ومعالجة تلك البيانات. سنتناول استخدام طريقتي POST وGET، مع أمثلة عملية توضح كل منهما.

مقدمة إلى نماذج HTML

نماذج HTML تستخدم لجمع البيانات من المستخدمين، مثل نصوص الإدخال أو الاختيارات من القوائم المنسدلة. تتكون النماذج من عناصر إدخال مختلفة مثل <input>، <textarea>، و<select>. يتم إرسال البيانات التي يدخلها المستخدم عبر النموذج إلى خادم الويب باستخدام طلبات GET أو POST.

مثال بسيط لنموذج HTML

<!DOCTYPE html>
<html lang="ar">
<head>
    <meta charset="UTF-8">
    <title>نموذج إدخال</title>
</head>
<body>

    <form action="process.php" method="post">
        <label for="name">الاسم:</label>
        <input type="text" id="name" name="name"><br>

        <label for="email">البريد الإلكتروني:</label>
        <input type="email" id="email" name="email"><br>

        <input type="submit" value="إرسال">
    </form>

</body>
</html>

هذا النموذج البسيط يتكون من حقلي إدخال (الاسم والبريد الإلكتروني) وزر إرسال. عند النقر على زر "إرسال"، يتم إرسال البيانات إلى ملف process.php باستخدام طريقة POST.

طرق إرسال البيانات باستخدام نماذج HTML

يمكن إرسال البيانات من نموذج HTML إلى PHP باستخدام طريقتي GET أو POST. لكل طريقة استخداماتها وخصائصها:

  • GET: يتم إرسال البيانات عبر عنوان URL، مما يجعلها ظاهرة في شريط العنوان. تُستخدم عادة عندما لا يكون للبيانات حساسية أو عند تصفح الروابط. ومع ذلك، هذه الطريقة لها قيود على حجم البيانات المرسلة.
  • POST: يتم إرسال البيانات بشكل مخفي، مما يجعلها أكثر أمانًا لإرسال البيانات الحساسة مثل كلمات المرور. كما أنها لا تفرض قيودًا على حجم البيانات المرسلة.

استخدام طريقة GET

يمكنك استخدام طريقة GET بإضافة method="get" إلى النموذج. إليك مثال:

<form action="process.php" method="get">
    <label for="name">الاسم:</label>
    <input type="text" id="name" name="name"><br>

    <input type="submit" value="إرسال">
</form>

في هذا المثال، سيتم إرسال البيانات عبر عنوان URL. يمكن للمستخدم رؤية البيانات المرسلة في شريط العنوان بعد الضغط على زر "إرسال".

استخدام طريقة POST

كما في المثال السابق، يتم إرسال البيانات باستخدام طريقة POST بشكل مخفي، وهو أكثر أمانًا. سنستمر في استخدام طريقة POST في الأمثلة القادمة.

استقبال ومعالجة البيانات باستخدام PHP

لإستقبال البيانات ومعالجتها في PHP، يمكن استخدام المتغيرات الفائقة $_GET و$_POST بناءً على طريقة الإرسال. هنا سنتعرف على كيفية استقبال البيانات باستخدام كل من POST وGET.

مثال على استقبال البيانات باستخدام POST

فيما يلي مثال على كيفية استقبال البيانات ومعالجتها باستخدام طريقة POST في ملف PHP:

<?php
    $name = $_POST['name'];
    $email = $_POST['email'];

    echo 'الاسم: ' . $name . '<br>';
    echo 'البريد الإلكتروني: ' . $email . '<br>';
?>

عند إرسال النموذج، سيتم طباعة القيم التي أدخلها المستخدم في النموذج.

مثال على استقبال البيانات باستخدام GET

إذا كنت تستخدم طريقة GET في النموذج، يمكنك استقبال البيانات باستخدام $_GET كما يلي:

<?php
    $name = $_GET['name'];

    echo 'الاسم: ' . $name . '<br>';
?>

في هذا المثال، يتم استخدام المتغير الفائق $_GET لاستقبال البيانات التي تم إرسالها عبر عنوان URL.

تأمين البيانات المدخلة من المستخدم

يجب على المطورين دائمًا تأمين البيانات المدخلة من المستخدم قبل معالجتها. هنا بعض النصائح:

  • استخدام htmlspecialchars() لتجنب هجمات XSS:
  • $name = htmlspecialchars($_POST['name']);
  • التحقق من صحة البريد الإلكتروني باستخدام filter_var():
  • $email = $_POST['email'];
    if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
        echo 'البريد الإلكتروني غير صحيح.';
    }

نصائح إضافية حول استخدام النماذج في HTML و PHP

  • استخدم طريقة POST عند إرسال بيانات حساسة.
  • تحقق دائمًا من البيانات قبل إدخالها في قاعدة البيانات.
  • استخدم التحقق من صحة البيانات على جانب العميل باستخدام JavaScript لتحسين تجربة المستخدم.

الخلاصة

في هذا المقال، تعلمنا كيفية إرسال واستقبال البيانات باستخدام نماذج HTML و PHP، وتعرفنا على الفرق بين طريقتي POST وGET. كما أوضحنا كيفية استقبال البيانات في PHP، وتطرقنا إلى تأمين البيانات المدخلة من المستخدمين. باستخدام هذه المعلومات، يمكنك الآن إنشاء نماذج تفاعلية وآمنة في تطبيقات الويب الخاصة بك.

طور مهاراتك: مقالات يجب قراءتها في البرمجة