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:

CREATE TABLE sites (id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY, url VARCHAR(250) NOT NULL DEFAULT '/',
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
('https://coursesweb.net/php-mysql/update-delete-mysql-form_s2', 'Update and Delete MySQL data with data from Form', 'PHP-MySQL tutorial about Update and Delete MySQL data with data from HTML Form'),
('https://coursesweb.net/php-mysql/', 'PHP-MySQL Course', 'PHP-MySQL Course with tutorials, scripts and code snippets'),
('https://marplo.net/jocuri', 'Flash Games', 'Flash Games online from various categories; for smart people')

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

<?php
//Update - Delete Data Using PHP, from: https://coursesweb.net/php-mysql/
$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>
<html>
<head>
<title>Update - Delete Data Using PHP</title>
</head>
<body>
<h1>Update - Delete Data Using PHP</h1>
<?php echo $res; ?>
<h2>Update</h2>
<?php echo $upd_html; ?>
<h2>Delete</h2>
<?php echo $del_html; ?>
</body>
</html>

Daily Test with Code Example

HTML
CSS
JavaScript
PHP-MySQL
Which HTML5 tag is indicated to be used as container for menu with navigation links in Web site?
<section> <nav> <article>
<nav><ul>
 <li><a href="http://coursesweb.net/css/" title="CSS Course">CSS Course</a></li>
 <li><a href="http://www.marplo.net/jocuri/" title="Flash Games">Flash Games</a></li>
</ul></nav>
Which CSS property shifts an item horizontally to the left or right of where it was?
text-align clear float
.some_class {
  width: 30%;
  float: left;
}
Click on the Math object method which returns x, rounded downwards to the nearest integer.
Math.ceil(x) Math.abs(x) Math.floor(x)
var num = 12.34567;
num = Math.floor(num);
alert(num);       // 12
Indicate the PHP function which returns the number of characters in string.
mb_strlen() count() stristr()
$str = "string with utf-8 chars åèö";
$nrchr = mb_strlen($str);
echo $nrchr;        // 30
Update and Delete MySQL data with data from Form

Last accessed pages

  1. Subclass with extends and Inheritance (27)
  2. Common PHP Errors and Solutions (6566)
  3. Numbers and Math in ActionScript 3 (3117)
  4. JavaScript base64 encode decode (3644)
  5. PHP MySQL - WHERE and LIKE (17939)

Popular pages this month

  1. Read Excel file data in PHP - PhpExcelReader (303)
  2. PhpSpreadsheet - Read, Write Excel and LibreOffice Calc files (250)
  3. Register and show online users and visitors (240)
  4. Courses Web: PHP-MySQL JavaScript Ajax HTML CSS Flash-AS3 (237)
  5. Insert, Select and Update NULL value in MySQL (149)