Php-mysql Course

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
What attribute makes an option from <select> selected?
checked="checked" selected="selected" disabled="disabled"
<select name="a_name">
 <option value="val1">Option 1</option>
 <option value="val2" selected="selected">Option 2</option>
</select>
What CSS value allows to create color gradients for background?
contain repeat-x linear-gradient
#id {
  background: linear-gradient(top left, #1f1, #fff, #11f);
}
What statement creates an array in JavaScript?
[] {} new Object()
var arr = [1, "CoursesWeb.net", "MarPlo.net"];
alert(arr[2]);
Indicate the PHP function used to redirect to other page.
function() header() switch()
header("Location: http://coursesweb.net/");
exit;
Update and Delete MySQL data with data from Form

Last accessed pages

  1. Mysql SELECT JOIN tables on two different Databases (3332)
  2. Refresh page if window width changes from a device size to other (1102)
  3. Integer and Float value in Select with PDO from string to numeric (8089)
  4. Multidimensional arrays and array functions (7989)
  5. innerHTML in PHP (14449)

Popular pages this month

  1. Courses Web: PHP-MySQL JavaScript Node.js Ajax HTML CSS (72)
  2. PHP Unzipper - Extract Zip, Rar Archives (64)
  3. SHA256 Encrypt hash in JavaScript (39)
  4. Read Excel file data in PHP - PhpExcelReader (32)
  5. SHA1 Encrypt data in JavaScript (29)