sql >> Database teknologi >  >> RDS >> Mysql

PHP &MySQL Inklusiv en Slet-knap på samme side

Ja, inkluder bare slettelogikken over dit valgudsagn.

<?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);

?>

Vær dog forsigtig med denne tilgang. Da det kun er et link, og hvis det er offentligt, kan en bot crawle og slette alt.

Bemærk også, at der er et par andre ændringer. Jeg ændrede parameteren fra id til delete_id , bare for at undgå tvetydighed. Jeg opdaterede slettelinket. Jeg tjekker den $_GET['delete_id'] er indstillet, før du kører sletteforespørgslen. Og jeg caster (int) på $_GET['delete_id'] for at sikre, at det faktisk er et heltal.



  1. Hvordan finder man top tre højeste løn i emp table i oracle?

  2. er det muligt at have accentfølsom og case-ufølsom utf8-sortering i mysql?

  3. Visual Studio - Kunne ikke linke MySql-databasetabel til DataSet

  4. Generer serier af datoer - brug datotype som input