آموزش PHP

حذف گروهی رکوردهای انتخاب شده توسط checkbox در PHP

حذف گروهی رکوردهای جدول دیتابیس در PHP

در داشبوردهای مدیریتی ما خیلی از زمان ها نیاز داریم که یک رکورد را حذف کنیم و این کار به سادگی با ارسال شناسه یا ID رکورد موردنظر قابل انجام است. اما اگر بخواهیم از جدولی که مجموعه ای از داده ها را نمایش می دهد چند رکورد را انتخاب و حذف کنیم باید چه کار کنیم؟

آموزش حذف گروهی رکوردهای در PHP

برای اینکار نیاز است در جدولی که داده های ما را نمایش می دهد یک ستون جهت نمایش checkbox ها قرار بدیم و ارزش آنها رو برابر با شناسه یا ID رکوردها تعیین کنیم.
مثال زیر رو ببینید:

				
					<?php
                        $sql = "SELECT * FROM `test`";
                        $result = $conn->query($sql);

                        echo '<form action="./process/test-process.php" method="post">';
                        if ($result->num_rows > 0) {
                            while ($row = $result->fetch_assoc()) {
                                echo "<input type='checkbox' name='user_ids[]' value='" . $row["tst_id"] . "'>" . $row["tst_name"] . "<br>";
                            }
                        }
                        echo '<input type="submit" value="Delete Selected Users" name="subm-test">';
                        echo "</>";

                        
?>
				
			

در اینجا ما مقادیر جدول “test” را دریافت و از طریق چک باکس نمایش دادیم.

حذف داده های جدول بر اساس انتخاب های checkbox

حذف داده های جدول بر اساس انتخاب های checkbox

برای حذف رکوردهای انتخاب شده نیز به شکل زیر عمل می کنیم:

				
					    if (isset($_POST['subm-test'])) {
        $user_ids = $_POST['user_ids'];

        // حذف رکوردهای انتخاب شده از دیتابیس
        foreach ($user_ids as $record) {
            $sql = "DELETE FROM `test` WHERE `tst_id` = $record";
            $conn->query($sql);
        }

        if ($conn->query($sql) === TRUE) {
            echo "<script>
alert('اطلاعات با موفقیت حذف شد');
window.location.href='../test.php';
</script>";
        } else {
            echo "Error: " . $sql . "<br>" . $conn->error;
        }
    }
				
			

و به همین راحتی ما می تونیم این قابلیت سودمند رو به پروژه خودمون اضافه کنیم.
این مثال تنها جهت حذف رکوردها بود اما می توانیم هر نوع پردازش دیگری را روی گروهی از داده ها انجام دهیم.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *