Я пытаюсь добавить ссылку удаления на каждую строку записи, отображаемую на моей странице. Мне удалось это сделать до сих пор, но не могу понять, как заставить ссылку работать, чтобы при нажатии ссылки удаления удалялась только эта строка данных из базы данных. Я очень новичок в php / mysql, поэтому прошу прощения. У меня есть следующий код.
<?php require("common.php"); if(empty($_SESSION['user'])) { header("Location: index.php"); die("Redirecting to index.php"); } $result = $db->prepare("SELECT * FROM compliance_requirement"); $result->execute(); ?> <div class="compTable"> <table > <tr> <th>Compliance Name</th><th>Compliance Goal</th><th>Compliance Description</th> <th>Options</th> </tr> <?php while($row = $result->fetch(PDO::FETCH_ASSOC)){ ?> <tr> <td style='width: 200px;'><?php echo $row['ComplianceName']; ?></td> <td style='width: 150px;'><?php echo $row['ComplianceGoal']; ?></td> <td style='width: 400px;'><?php echo $row['ComplianceDescription']; ?></td> <td style ='width: 250px;' ><?php echo '<a href="delete.php?action=delete&id=delete'.$row['ComplianceName'].'">Delete</a>';?> </td> </tr> <?php } ?> </table> </div>
.. и затем в моем файле delete.php, у меня есть следующий код:
<?php require ('common.php'); if( isset($_GET['delete']) ) { $id = $_GET['delete']; $sql= $db->prepare("DELETE FROM compliance_requirement WHERE ComplianceName='$id'"); $sql->execute(); echo "<meta http-equiv='refresh' content='0;url=compliance.php'>"; } ?>
Когда щелкнули ссылку на удаление, у нее просто появляется пустой экран. Любая помощь высоко ценится! благодаря
Тег a href
должен быть [ Пропущенные цитаты ]
<?php echo '<a href="delete.php?action=delete&id='.$row['ComplianceName'].'">Delete</a>';?> <?php echo '<a href="delete.php?edit='.$row['ComplianceID'].'">Edit</a>';?> <?php echo '<a href="delete.php?invite='.$row['id'].'">Invite Obstacle</a>';?>
Я считаю, что при построении динамической ссылки лучше всего создать URL-адрес (вы можете повторить его во время тестирования). Это позволяет избежать путаницы цитат. Затем URL-адрес прост в использовании.
<?php while($row = $result->fetch(PDO::FETCH_ASSOC)){ $url = "delete.php?action=delete&id=".$row['ComplianceName']; //echo $url; ?> <tr> <td style='width: 200px;'><?php echo $row['ComplianceName']; ?></td> <td style='width: 150px;'><?php echo $row['ComplianceGoal']; ?></td> <td style='width: 400px;'><?php echo $row['ComplianceDescription']; ?></td> <td style ='width: 250px;' ><?php echo '<a href ='.$url.'>' ?> Delete </a>
Пример ссылки
<td style ='width: 250px;' ><a href =delete.php?action=delete&id=name1> Delete </a>