Rumah  >  Artikel  >  pangkalan data  >  Bagaimana untuk Melaksanakan Butang Padam dalam Borang PHP untuk Mengalih Keluar Rekod dari Jadual MySQL?

Bagaimana untuk Melaksanakan Butang Padam dalam Borang PHP untuk Mengalih Keluar Rekod dari Jadual MySQL?

Barbara Streisand
Barbara Streisandasal
2024-10-27 21:30:30730semak imbas

How to Implement a Delete Button in a PHP Form to Remove Records from a MySQL Table?

Cara Mengintegrasikan Butang Padam ke dalam Borang PHP untuk Mengalih Keluar Rekod daripada Jadual MySQL

Masalah:

Permintaan untuk menambah pilihan "Padam" pada jadual HTML yang diisi oleh jadual MySQL telah terbukti tidak berjaya. Objektifnya adalah untuk mencipta pautan padam berfungsi yang mencetuskan penyerahan borang dan menghapuskan baris yang sepadan daripada pangkalan data.

Snapshot Kod:

results.php :

<code class="php">// Fetch data from the database
$contacts = mysql_query("SELECT * FROM contacts ORDER BY ID ASC") or die(mysql_error());

// If results exist, display the table
if (mysql_num_rows($contacts) > 0) {
    // Table markup
    echo '<table id="contact-list">';

    // Table head
    echo '<thead><tr><th>Name</th><th>Email</th><th>Telephone</th><th>Address</th><th>Delete</th></tr></thead>';

    // Table body
    while ($contact = mysql_fetch_array($contacts)) {
        echo '<tr>';
        echo '<td>' . $contact['name'] . '</td>';
        echo '<td>' . $contact['email'] . '</td>';
        echo '<td>' . $contact['telephone'] . '</td>';
        echo '<td>' . $contact['address'] . '</td>';

        // Delete form
        echo '<td><form action="delete.php" method="post">';
        echo '<input type="hidden" name="name" value="">';
        echo '<input type="submit" name="submit" value="Delete">';
        echo '</form></td>';

        echo '</tr>';
    }

    // Table foot
    echo '</table>';
}</code>

delete.php:

<code class="php">// Define the deletion query
$query = "DELETE FROM contacts WHERE name={$_POST['name']} LIMIT 1";

// Execute the query
mysql_query($query);

// Display a success or failure message based on the number of affected rows
if (mysql_affected_rows() == 1) {
    echo '<strong>Contact Has Been Deleted</strong><br /><br />';
} else {
    echo '<strong>Deletion Failed</strong><br /><br />';
}</code>

Penyelesaian:

Isunya terletak pada menghantar nilai kunci utama (dalam kes ini, nama) kepada skrip delete.php. Untuk membetulkannya, pautan padam mesti memasukkan nilai nama sama ada melalui medan tersembunyi atau sebagai parameter URL.

Kod Kemas Kini:

<code class="php">// Within the table body loop in results.php

echo '<td><form action="delete.php?name=' . $contact['name'] . '" method="post">';</code>

Atas ialah kandungan terperinci Bagaimana untuk Melaksanakan Butang Padam dalam Borang PHP untuk Mengalih Keluar Rekod dari Jadual MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn