[英]How to delete random row using button in PHP?
<?php
include("connection.php");
echo "Do you really want to DELETE this field? " ;
?>
<form method="post">
<input type="submit" name="yes" value="YES" />
<?php
$res = mysql_query("SELECT * FROM members");
while($row = mysql_fetch_array($res))
{
if(isset($_REQUEST['yes']))
{
$id=$row['id'];
echo $id;
mysql_query("DELETE from members WHERE id= '$id' ");
header("location: view.php");
}
}
?>
<input type="submit" name="no" value="NO" />
<?php
if(isset($_REQUEST['no']))
{
header("location: view.php");
}
?>
</form>
</body>
这是我的代码,当单击删除按钮时,从列表视图中删除随机行,但是我没有得到结果,所以请帮助我。
更改此行:
mysql_query("DELETE from members WHERE id= '$id' ");
对此:
mysql_query("DELETE FROM members WHERE id= '".$id."' ");
将数据库连接作为第二个参数传递给mysql_query(),以从成员表中删除行:
mysql_query("DELETE from members WHERE id= '$id'" , $dbCon);
在这里,DB连接是指您在connection.php文件中定义的内容:
$db_host="localhost";
$db_name="test";
$username="root";
$password="";
$dbCon=mysql_connect($db_host,$username,$password);
希望这能解决您的问题!
您的查询SELECT * FROM members
无顺序)将以不可预测的顺序选择所有行。
while
循环中的if
s始终为true或为false:
如果用户单击“是”按钮,则表的所有行将被删除,因为您没有exit;
在header("location: view.php");
(请参阅这篇文章 )
如果用户单击“否”按钮,则while循环的每次迭代都不会执行任何操作。
所以你应该怎么做:
exit;
在header("location: view.php");
<?php
include("connection.php");
echo "Do you really want to DELETE this field? " ;
?>
<form method="post">
<input type="submit" name="yes" value="YES" />
<?php
if(isset($_REQUEST['yes']))
{
if(isset($_GET['delet']))
{
$id = $_GET['delet'];
$res = mysql_query("SELECT * FROM members WHERE id = '$id' ");
$row = mysql_fetch_array($res);
$did = $row['id'];
$dname = $row['name'];
$dphn = $row['phn'];
/*echo $did;
echo $dname;
echo $dphn;*/
$ins = "INSERT INTO del (mid,name,phn) values ('$did','$dname','$dphn')";
mysql_query($ins);
mysql_query("DELETE FROM members WHERE id = '$id' ");
header('location: view.php');
}
}
?>
<input type="submit" name="no" value="NO" />
<?php
if(isset($_REQUEST['no']))
{
header("location: view.php");
exit;
}
?>
</form>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.