"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > كيفية تحديث صفوف MySQL المتعددة ببيانات النموذج باستخدام PHP؟

كيفية تحديث صفوف MySQL المتعددة ببيانات النموذج باستخدام PHP؟

تم النشر بتاريخ 2024-11-08
تصفح:289

How to Update Multiple MySQL Rows with Form Data Using PHP?

تحديث صفوف MySQL المتعددة ببيانات النموذج

في تطوير الويب، من الشائع أن يكون لديك نموذج حيث يمكن للمستخدمين تحرير السجلات من قاعدة البيانات. أحد السيناريوهات الشائعة هو تحديث صفوف متعددة في نفس الجدول ببيانات معدلة. يمكن تحقيق ذلك باستخدام PHP وMySQL.

بنية النموذج واسترجاع البيانات

النموذج الأولي مسؤول عن تقديم البيانات المراد تحريرها. في هذا المثال، يقوم النموذج باسترداد جميع الصور ذات GALLERY_id محدد من قاعدة البيانات ويعرضها مع الحقول لتعديل عنوان الصورة وعلاماتها.

إرسال البيانات والتحديثات

عند إرسال النموذج، يتم إرسال البيانات إلى برنامج PHP النصي للمعالجة. يستخدم البرنامج النصي حلقة foreach للتكرار على البيانات المنشورة واستخراج قيم معرف الصورة والعنوان والعلامات.

تحديث الصفوف بالبيانات المعدة

التالي الخطوة هي تحديث الصفوف المطابقة في قاعدة البيانات. لهذا، يتم استخدام بيان معد. يتضمن:

  1. إعداد استعلام SQL مع العناصر النائبة للقيم المراد تحديثها.
  2. ربط قيم العنصر النائب بالبيانات الفعلية.
  3. تنفيذ الاستعلام لـ كل صف في الحلقة.

تكرار مصفوفات النموذج

للسماح بعدة الصفوف المراد تحديثها، يتم إرسال حقول نموذج HTML كمصفوفات. يتم تحقيق ذلك عن طريق استخدام علامة [] في أسماء الحقول:

echo "

في برنامج PHP النصي، يتم الوصول إلى هذه المصفوفات باستخدام حلقة foreach، مما يسمح للبرنامج النصي بالتكرار على البيانات وتحديث كل صف وفقًا لذلك.

مثال Code

سيبدو برنامج PHP النصي المحدث كما يلي:

foreach ($_POST['photo_id'] as $key => $photo_id) {
    $id = $photo_id;
    $title = $_POST['photo_title'][$key];
    $tags = $_POST['photo_tags'][$key];

    $sql = "UPDATE photos SET title=?, tags=? WHERE id=?";
    $query = $db->prepare($sql);
    $query->execute(array($title, $tags, $id));
}

باتباع هذه الخطوات، يمكنك نشر بيانات النموذج بشكل فعال وتحديث صفوف متعددة في جدول MySQL.

أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3