我正在尝试使用数据库信息动态更新html表。用户必须能够添加或删除信息。我不知道他怎么能从数据库中删除一行
<?php
while($row = mysqli_fetch_array($result))
{
echo '
<tr>
<td>'.$row["Clientfirstname"].'</td>
<td>'.$row["Clientlastname"].'</td>
<td>'.$row["Clientemail"].'</td>
<td>'.$row["Invoicestatus"].'</td>
<td>'.$row["reg_date"].'</td>
<td><a href="delete.php"><button class="btn btn-primary" type="submit" name="id" value=.$row["id"].>Delete</button></td>
</tr>
';
}
?>
</table>
这是delete.php页面>>
try{
$pdo = new PDO("mysql:host=localhost;dbname=phplogin", "root", "");
// Set the PDO error mode to exception
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch(PDOException $e){
die("ERROR: Could not connect. " . $e->getMessage());
}
if( isset( $_POST['id'] ) && is_numeric( $_POST['id'] ) && $_POST['id'] > 0 )
{
$id = $_POST['id'];
$stmt = $dbh->prepare( "DELETE FROM myinvoice WHERE id =:id" );
$stmt->bindParam(':id', $id);
$stmt->execute();
if( ! $stmt->rowCount() ) echo "Deletion failed";
}
else
{
echo "rtt";
}
我无法确定ID是否已正确发送到删除页面
答案 0 :(得分:0)
您需要将按钮放在<form>
中,而不是<a>
中。
在使用.$row["id".
连接变量之前,您还需要在引号末尾加上字符串。
<td><form action="delete.php" method="post"><button class="btn btn-primary" type="submit" name="id" value="'.$row["id"].'">Delete</button></form></td>