If I click the delete button, then it is asking permission from me to delete the contents but after clicking, OK
contents are not deleting.
In my understanding, my code can not catch the id to delete the contents.
In my browser search box it is showing :
localhost/new/tree1/view_tree.php?id=
For getting the id code is given below:
<?php include('connect.php'); $result = mysql_query("SELECT * FROM descriptionoftree WHERE vis=0 order by scientificname"); while($row = mysql_fetch_array($result)) { echo '<tr>'; echo '<td >'.$row['scientificname'].'</td>'; echo '<td>'.$row['english_name'].'</div></td>'; echo '<td>'.$row['banglaname'].'</div></td>'; echo '<td>'.$row['groupname'].'</div></td>'; echo '<td><a href="update_tree.php? id='.$row['id'].'" title="Click To Update"><strong>Update</strong></a></td>'; ?> <td><a href="view_tree.php?id=<?php $row['id']?> "onclick="return confirm('Are you sure you want to delete?')"<strong>Delete </strong></a></td> <?php echo '</tr>'; } ?>
For deleting the row (contents) code is given below:
if(isset($_GET['id'])) { $cid=$_GET['id']; $sql=mysql_query("DELETE descriptionoftree WHERE id='$cid'"); }
Advertisement
Answer
You’re not echoing your variable here.
vvv <td><a href="view_tree.php?id=<?php $row['id']?>
Add an echo
<td><a href="view_tree.php?id=<?php echo $row['id']?>
Or use short echo tag
<td><a href="view_tree.php?id=<?= $row['id'] ?>
Also, your delete query is wrong. You’re missing FROM
.
Should be this:
$sql=mysql_query("DELETE FROM descriptionoftree WHERE id='$cid'");
Also try reading up on SQL Injections, How can I prevent SQL injection in PHP?
Your current code is vulnerable.