HennySmafter
HennySmafter

Reputation: 131

Delete row from mysql through generated table with records

I am using 2 pages. On one page it generates a table with the records and a delete button. After pressing delete it goes to the second page which should delete the record. But it doesn't. Below is the code that I am using.

PS: The code is adapted from a tutorial I found through Google a while ago.

delete_overzicht.php

<?php
// Load Joomla! configuration file
require_once('../../../configuration.php');
// Create a JConfig object
$config = new JConfig();
// Get the required codes from the configuration file
$server = $config->host;
$username   = $config->user;
$password   = $config->password;
$database = $config->db;
// Connect to db
$con = mysqli_connect($server,$username,$password,$database);
if (!$con){
die('Could not connect: ' . mysqli_error($con));
}
mysqli_select_db($con,$database);
// Get results
$result = mysqli_query($con,"SELECT * FROM cypg8_overzicht");

echo "<table border='1' id='example' class='tablesorter'><thead><tr><th>Formulier Id</th><th>Domeinnaam</th><th>Bedrijfsnaam</th><th>Datum</th><th>Periode</th><th>Subtotaal</th><th>Dealernaam</th><th>Verwijderen</th></tr></thead><tbody>";

while($row = mysqli_fetch_array($result))
  {
  echo "<tr>";
  echo "<td>" . $row['formuliernummer'] . "</td>";
  echo "<td>" . $row['domeinnaam'] . "</td>";
  echo "<td>" . $row['bedrijfsnaam'] . "</td>";
  echo "<td>" . $row['datum'] . "</td>";
  echo "<td>" . $row['periode'] . "</td>";
  echo "<td> &euro; " . $row['subtotaal'] . "</td>";        
  echo "<td>" . $row['dealercontactpersoon'] . "</td>";     
  echo "<td><a href='delete.php?id=" . $row['id'] . "'>Verwijderen </a></td>";
  echo "</tr>";
  }
echo "</tbody></table>";

mysqli_close($con);
?>

delete.php

<?php
// Load Joomla! configuration file
require_once('../../../configuration.php');
// Create a JConfig object
$config = new JConfig();
// Get the required codes from the configuration file
$server = $config->host;
$username   = $config->user;
$password   = $config->password;
$database = $config->db;
// Connect to db
$con = mysqli_connect($server,$username,$password,$database);
if (!$con){
die('Could not connect: ' . mysqli_error($con));
}
mysqli_select_db($con,$database);

// Check whether the value for id is transmitted
if (isset($_GET['id'])) {

// Put the value in a separate variable
$id = $_GET['id'];

// Query the database for the details of the chosen id
$result = mysqli_query($con,"DELETE * FROM cypg8_overzicht WHERE id = $id");

} else {
die("No valid id specified!");
}
?>

Thanks to everyone who is willing to help!

Upvotes: 0

Views: 349

Answers (1)

HennySmafter
HennySmafter

Reputation: 131

The following answer comes from the user Andrewsi. This answer was posted in the comments.

The syntax for DELETE is DELETE FROM - you need to remove the *

Upvotes: 1

Related Questions