通过比较coloumn中的数据,使用php从mysql中删除记录

时间:2016-01-15 07:31:54

标签: php mysql database

我正在尝试从数据库中删除记录,而我正在使用此代码。

 $value = $_POST['name'];
 $sql="DELETE FROM savedemail WHERE email='$value'";    

此代码正在删除记录。但是对于像我输入3这样的索引,它会删除第三行的记录而不是匹配数据库的内容。

我想通过将列内的数据与给定的$ values变量进行匹配来删除记录。

1 个答案:

答案 0 :(得分:0)

您想使用LIKE

$sql="DELETE FROM savedemail WHERE serial LIKE '%$value%'";    

因此,如果$value等于blah,那么它将删除包含单词blah的所有行。 blah可以位于串行列字段的任何位置。

在此处阅读更多内容:http://dev.mysql.com/doc/refman/5.7/en/pattern-matching.html

  

模式匹配

     

[..]“%”匹配任意数量的字符[..]

     

查找包含“w”的名称:

mysql> SELECT * FROM pet WHERE name LIKE '%w%';
+----------+-------+---------+------+------------+------------+
| name     | owner | species | sex  | birth      | death      |
+----------+-------+---------+------+------------+------------+
| Claws    | Gwen  | cat     | m    | 1994-03-17 | NULL       |
| Bowser   | Diane | dog     | m    | 1989-08-31 | 1995-07-29 |
| Whistler | Gwen  | bird    | NULL | 1997-12-09 | NULL       |
+----------+-------+---------+------+------------+------------+