The code presented in this tutorial shows how to Update and Delete data in MySQL table with data from HTML form. For details, see the comments in code.

• To Download the script with the code, click: Update and Delete MySQL data with Form (2 KB)

For this example it is used a table named "sites" with 4 columns: id, url, title, and description.

- SQL code to create the table:

title VARCHAR(100), description VARCHAR(150)) CHARACTER SET utf8 COLLATE utf8_general_ci

- SQL code to insert some data:

INSERT INTO sites (url, title, description) VALUES
('', 'Update and Delete MySQL data with data from Form', 'PHP-MySQL tutorial about Update and Delete MySQL data with data from HTML Form'),
('', 'PHP-MySQL Course', 'PHP-MySQL Course with tutorials, scripts and code snippets'),
('', 'Flash Games', 'Flash Games online from various categories; for smart people')

- PHP-MySQL code to Update and Delete with form:

//Update - Delete Data Using PHP, from:
$res ='';
$upd_html ='';
$del_html ='';

//Connect to mysql
$conn = new mysqli('localhost', 'root', 'password', 'dbname');

//check connection and set to use utf8
if(mysqli_connect_errno()) exit('Error connect: '. mysqli_connect_error());
else $conn->query('SET character_set_client="utf8",character_set_connection="utf8",character_set_results="utf8";');

//if form submited
if(isset($_POST['sbmt']) && isset($_POST['id'])){
  //if request to update, make update with data from field
  if($_POST['sbmt'] =='Update'){
    $id = intval($_POST['id']);
    $url = $conn->real_escape_string($_POST['url']);
    $title = $conn->real_escape_string($_POST['title']);
    $description = $conn->real_escape_string($_POST['description']);
    if($conn->query("UPDATE sites SET url='$url', title='$title', description='$description' WHERE id=". $id)) $res .='Row updated<br>';
    else $res .='Error update: '. $conn->error;
  else if($_POST['sbmt'] =='Delete'){
  //if request to delete, delete the row with received $id
    $id = intval($_POST['id']);
    if($conn->query("DELETE FROM sites WHERE id=". $id)) $res .='Row deleted<br>';
    else $res .='Error delete: '. $conn->error;
else if(isset($_GET['id'])){
  $id = intval($_GET['id']);
  $upd_html .='<form method="post" action="'.$_SERVER["PHP_SELF"].'"><input type="hidden" name="id" value="'. $id .'">';

  //gets name and email associated to $id for update
  $resql = $conn->query("SELECT * from sites WHERE id=".$id);
  while($row = $resql->fetch_assoc()) {
    $upd_html .='URL: <input type="text" name="url" value="'. $row['url'] .'"><br>
Title: <input type="text" name="title" value="'. $row['title'] .'"><br>
Description: <input type="text" name="description" value="'. $row['description'] .'"><br>';
  $upd_html .='<input type="submit" name="sbmt" value="Update"></form><br>';
else {
//sets list with links for update and options for delete
  $resql = $conn->query("SELECT * from sites");
  while($row = $resql->fetch_assoc()){
    $upd_html .='<li><a href="'. $_SERVER["PHP_SELF"] .'?id='. $row['id'] .'" title="'. $row['title'] .'">'. $row['title'] .'</a></li>';
    $del_html .='<option value="'. $row['id'] .'">'. $row['title'] .'</)>';

  $upd_html ='<ul>'. $upd_html .'</ul>';  //finishes html with list
  $del_html ='<form method="post" action="'.$_SERVER["PHP_SELF"].'"><select name="id">'. $del_html .'</select><br>
  <input type="submit" name="sbmt" value="Delete"></form>';  //finishes html with list
<!DOCTYPE html>
<title>Update - Delete Data Using PHP</title>
<h1>Update - Delete Data Using PHP</h1>
<?php echo $res; ?>
<?php echo $upd_html; ?>
<?php echo $del_html; ?>

Daily Test with Code Example

Which tag create a highlighted bolded text?
<q> <strong> <em>
<p>Address: <strong></strong> - Tutorials.</p>
Which of these CSS codes displays the text bolded?
text-size: 18px; font-style: italic; font-weight: 800;
#id {
  font-weight: 800;
What JavaScript function can be used to call another function multiple times, to a specified time interval?
setInterval() setTimeout() push()
function someFunction() { alert(""); }
setInterval("someFunction()", 2000);
Click on the correctly defined variable in PHP.
var vname = 8; $vname = 8; $vname == 8;
$vname = 8;
echo $vname;
Update and Delete MySQL data with data from Form

Last accessed pages

  1. The Mastery of Love (3341)
  2. Multiple Select Dropdown List with JavaScript (7841)
  3. Ajax-PHP File Manager (4736)
  4. Courses Web: PHP-MySQL JavaScript Ajax HTML CSS Flash-AS3 (70654)
  5. Add, Change, and Remove Attributes with jQuery (35782)

Popular pages this month

  1. Courses Web: PHP-MySQL JavaScript Ajax HTML CSS Flash-AS3 (1347)
  2. Qwop (670)
  3. Theme Hotel (590)
  4. Read Excel file data in PHP - PhpExcelReader (544)
  5. Register and show online users and visitors (493)