使用 pdo all in one page 搜索后从 sql 中删除数据

Delete data from sql after search with pdo all in one page

我一直在尝试找出允许在我的代码中进行搜索和最重要的删除数据的神奇代码。我把所有的搜索代码放在一起,效果很好,但是当要删除它时,我卡住了,我找不到合适的地方和代码来删除我的数据。我在 google 中找到了所有地方。 我的问题是,任何人都可以解决这个删除问题,还是目前的技术不可能?我的代码如下所示:

<?php 
//load database connection
    $host = "localhost";
    $user = "abcd";
    $password = "******";
    $database_name = "abcd";
    $pdo = new PDO("mysql:host=$host;dbname=$database_name", $user, $password, array(
    PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION
    ));
// Search from MySQL database table




$search=$_POST['search'];
$query = $pdo->prepare("select * from wfuk where post_code LIKE '%$search%' OR telephone LIKE '%$search%'  LIMIT 0 , 10");
$query->bindValue(1, "%$search%", PDO::PARAM_STR);
$query->execute();
// Display search result
?>
<html>
<head>
<title> How To Create A Database Search With MySQL & PHP Script | Tutorial.World.Edu </title>
</head>
<body>
<form action="search.php" method="post">
Search: <input type="text" name="search" placeholder=" Search here ... "/>
<input type="submit" value="Submit" />
</form>
<?php
  if (!$query->rowCount() == 0) {
    echo "Search found :<br/>";
    echo "<table style=\"font-family:arial;color:#333333;\">";  
    echo "<tr>
    <td style=\"border-style:solid;border-width:1px;border-color:#98bf21;background:#98bf21;\">First Name</td>
    <td style=\"border-style:solid;border-width:1px;border-color:#98bf21;background:#98bf21;\">Last Name</td>
    <td style=\"border-style:solid;border-width:1px;border-color:#98bf21;background:#98bf21;\">Trade</td>
    <td style=\"border-style:solid;border-width:1px;border-color:#98bf21;background:#98bf21;\">Post Code</td>
    <td style=\"border-style:solid;border-width:1px;border-color:#98bf21;background:#98bf21;\">Telephone</td>
    <td style=\"border-style:solid;border-width:1px;border-color:#98bf21;background:#98bf21;\">Comments</td>
    <td style=\"border-style:solid;border-width:1px;border-color:#98bf21;background:#98bf21;\">To be use</td></tr>";            
   while ($results = $query->fetch()) {

    echo "<tr><td style=\"border-style:solid;border-width:1px;border-color:#98bf21;\">";            
    echo $results['first_name'];

    echo "</td><td style=\"border-style:solid;border-width:1px;border-color:#98bf21;\">";           
    echo $results['last_name'];

    echo "</td><td style=\"border-style:solid;border-width:1px;border-color:#98bf21;\">";           
    echo $results['trade'];

    echo "</td><td style=\"border-style:solid;border-width:1px;border-color:#98bf21;\">";           
    echo $results['post_code'];

    echo "</td><td style=\"border-style:solid;border-width:1px;border-color:#98bf21;\">";
    echo $results['telephone'];

    echo "</td><td style=\"border-style:solid;border-width:1px;border-color:#98bf21;\">";
    echo $results['comments'];

    echo "</td><td style=\"border-style:solid;border-width:1px;border-color:#98bf21;\">";
    echo("<button onclick=\"location.href='search.php?del=" . $results['id'] . "'\"> delete user</button>"); 

    echo "</td></tr>";              
     }
    echo "</table>";        
     } else {
    echo 'Nothing found';
     }
?>

您需要的查询:

DELETE FROM wfuk 
WHERE id = ?

id 参数的值将是查询字符串:

$query->bindValue(1, $_GET['del'], PDO::PARAM_INT);

您好,删除选项必须通过删除页面完成

<?php
 require_once("db_reg.php");//this its the conection to the host
if (!isset($_POST['submit']));// comes from del <button onclick=\"location.href='search.php?del=" . $results['id'] . "'\">
$link = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD);
 if (!$link)
{
die('Could NOT Connect: rong pass ' . mysql_error(rong_pass));
}
$db_selected = mysql_select_db(DB_NAME, $link);
if (!$db_selected) 
{
die ('Cant\'t use' . DB_NAME. 'abcd' . mysql_error());
}
echo 'log in succes';
 if( isset($_GET['del']) ) // this its basicley the delet function
 {
  $id = $_GET['del'];
  $sql= "DELETE FROM construction WHERE id='$id'";
  $res= mysql_query($sql) or die("Failed".mysql_error());
  echo "<meta http-equiv='refresh' content='0;url=search.php'>";
 }
?>