0

データベースからのデータで満たされたテーブルがあり、特定のユーザーごとにそのユーザーを削除するためのボタンが必要です。しかし、どうすればこれを行うことができますか?

コードは次のとおりです。

<?php               
    include '../includes/db_connect.php';

    $sql = "SELECT * FROM `users`";
    $result = mysql_query($sql, $connection) or die ("Failed to excecute the query $sql on $connection");
?>
<table border=1>
    <tr>
        <th>
        Access lvl
        </th>
        <th>
        Username
        </th>
        <th>
        Email
        </th>
    </tr>
<?php
    while($row = mysql_fetch_array($result))
    {
        echo "</td><td>";
        echo $row['access'];
        echo "</td><td>";
        echo $row['username'];
        echo "</td><td>";
        echo $row['email'];
        echo "</td></tr>";
    }
    echo "</table>";
?>
4

3 に答える 3

2

私はこれを非常に頻繁に行い、jQuery を使用します。私は以下を使用します:

HTML:

<table>
....
<tr>
    <td><span class="delete">Delete me!</span></td>
</tr>
</table>

jQuery:

$(document).on("click", ".delete", function(event)
{
    var sData = "?id=" + $(this).data("id");
    $.ajax({
        url: "pages/delete_script.php",
        type: "POST",
        data: sData,
        success: function(sResult)
        {
            // Process the data you got back from the delete script
            // For example removing the row if successfully deleted:
            if(sResult == "OK")
            {
                $(this).closest("tr").remove();
            }
        },
        statusCode: 
        {
            404: function() 
            {
                alert("page not found");
            }
        }
    });
});

これon()は動的要素用です (私はそのページで AJAX を使用してすべてを行います)。次に、送信する必要があるデータを正しい形式で入力し、AJAX 要求を実行します。PHP ファイルでは、次のようになります。

if($_SERVER['REQUEST_METHOD'] == "POST")
{
    if(isset($_POST['id'])
    {
        mysql_query(
            sprintf('DELETE FROM `table` WHERE `id` = %d', $_POST['id'])
        );
    }
}

もちろん、正しいものを確実に削除するために、より多くのチェックを使用することをお勧めします。

于 2012-09-06T08:51:13.003 に答える