sql >> Databasteknik >  >> RDS >> Mysql

PHP &MySQL Inklusive en radera-knapp på samma sida

Ja, inkludera bara borttagningslogiken ovanför ditt valuttryck.

<?php
// Connect to server and select database.
$link = mysqli_connect("localhost", "root", "password", "testdelete"); //for local machine testing

// Check connection
if ($link === false){
    die("ERROR: Could not connect. " . mysqli_connect_error());
}

// Handle delete
if (isset($_GET['delete_id'])) {
    // get value of id that sent from address bar 
    $delete_id = (int) $_GET['delete_id'];

    // Delete data in mysql from row that has this id 
    $sql="DELETE FROM testdelete.test_mysql WHERE id='$delete_id'";
    $result=$link->query($sql);

    // if successfully deleted
    if ($result){
        echo "Deleted Successfully";
        echo "<BR>";
    } else {
        echo "Delete ERROR";
    }
}

// select record from mysql 
$sql = "SELECT id, name, lastname, email FROM testdelete.test_mysql";
$result = $link->query($sql);

if ($result->num_rows > 0) {
    include 'table_header.html';
    // output data of each row
    while($row = $result->fetch_assoc()) {
        echo "<tr>";
        echo "<td bgcolor=\"#FFFFFF\">".$row["id"]."</td>";
        echo "<td bgcolor=\"#FFFFFF\">". $row["name"]."</td>";
        echo "<td bgcolor=\"#FFFFFF\">" . $row["lastname"]."</td>";
        echo "<td bgcolor=\"#FFFFFF\">". $row["email"] . "</td>";
        echo "<td bgcolor=\"#FFFFFF\"><a href=\"?delete_id={$row['id']}\">Delete row</a></td>";
        echo "</tr>";
     }
     include 'table_footer.html';
} else {
     echo "0 results";
}

// close connection
mysqli_close($link);

?>

Var dock försiktig med detta tillvägagångssätt. Eftersom det bara är en länk, och om den är offentlig, kan en bot genomsöka och ta bort allt.

Observera också att det finns några andra ändringar. Jag ändrade paramet från id till delete_id , bara för att undvika oklarheter. Jag uppdaterade borttagningslänken. Jag kontrollerar att $_GET['delete_id'] ställs in innan du kör raderingsfrågan. Och jag castar (int) på $_GET['delete_id'] för att se till att det faktiskt är ett heltal.



  1. CROSS JOIN vs INNER JOIN i SQL

  2. Hur man använder Hibernate Annotations för att lägga till ett index på en Lob / Clob / Tinyblob

  3. Hur kombinerar man aggregerade funktioner i MySQL?

  4. fel vid installation av psycopg2, bibliotek hittades inte för -lssl