0

I am trying to delete the record from the vaccinedetail table, i've tried to run the delete statement in phpmyadmin and it ran perfectly. But when i tried the delete statement in my code, it wont delete the record.Any idea??

<?php
include('connect-db.php');
if (isset($_GET['id']) && is_numeric($_GET['id']))
{
 $id = $_GET['id'];
 $result = mysql_query("DELETE FROM vaccinedetail WHERE id=$id") or die(mysql_error());
 header("Location: start.php");
}
else
{
 header("Location: displaytype.php");
}
?> 

.

<table border='1' cellpadding='10'>
 <tr>
 <th>ID</th>
 <th>Vaccine ID</th>
 <th>疫苗名稱 (繁體)</th>
 <th>疫苗名称 (简体)</th>
 <th>Vaccine Name (Eng)</th>
 <th>Total no of injection</th>
 <th>Nth Injection</th>
 <th>Next Injection Skip</th>
 <th></th>
 </tr>
<?php
include('connect-db.php');
$result = mysql_query("SELECT vaccinedetail.id,vaccinedetail.vaccineid,vaccinedetail.vaccinename1,vaccinedetail.vaccinename2,vaccinedetail.vaccinename3, vaccinedetail.totalnoofinjection,vaccinedetail.nthinjection,vaccinedetail.skip FROM vaccinedetail WHERE vaccinedetail.vaccineid = '" . $_POST['vaccineid'] . "'") or die(mysql_error()); 
// ^^^ show the specifc type of vaccine taht match the vaccine type in the typeserach.php
?>
<?php
while($row = mysql_fetch_array( $result )) {
?>
 <tr>
 <td><input type="text" name = "id[]" value="<?php echo $row['id'] ?>"</td>
 <td><input type="text" name = "vaccineid[]" value="<?php echo $row['vaccineid'] ?>"</td>
 <td><input type="text" name = "vaccinename1[]" value="<?php echo $row['vaccinename1'] ?>"</td>
 <td><input type="text" name = "vaccinename2[]" value="<?php echo $row['vaccinename2'] ?>"</td>
 <td><input type="text" name = "vaccinename3[]" value="<?php echo $row['vaccinename3'] ?>"</td>
 <td><input type="text" name = "totalnoofinjection[]" value="<?php echo $row['totalnoofinjection'] ?>"</td>
 <td><input type="text" name = "nthinjection[]" value="<?php echo $row['nthinjection'] ?>"</td>
 <td><input type="text" name = "skip[]" value="<?php echo $row['skip'] ?>"</td>
 <!--<td><a href="editdisplaytype.php?id=' . $row['id'] . '"><img src="edit.png" width="20px"></a>-->
 <td><a href="deletedisplaytype.php?id=' . $row['id'] . '"><img src="delete.jpg" width="20px"></a></td>
 </tr>
<?php
}
?>
</table>
Tom Udding
2,3043 gold badges24 silver badges34 bronze badges
asked Jun 23, 2017 at 9:37
4
  • 1
    What error did the query throw? Commented Jun 23, 2017 at 9:40
  • Check your DB connections and echo mysql_error() function after mysql_query(). Commented Jun 23, 2017 at 9:42
  • check is query is executing or not if(! $result) { die('Could not delete data: ' . mysql_error()); } echo "Deleted data successfully\n"; Commented Jun 23, 2017 at 9:43
  • 1
    Turn error reporting on. Saves hours of debugging in the dark. In this case you'd see a "converting array to string" error because $id = $_GET['id']; but name = "id[]" i.e. id is an array. Commented Jun 23, 2017 at 9:51

2 Answers 2

1

You are not passing id correctly on url.

NOTE: Please don't use mysql_, they are deprecated. Use mysqli_ or PDO.

Change:

<td><a href="deletedisplaytype.php?id=' . $row['id'] . '"><img src="delete.jpg" width="20px"></a></td>

To:

<td><a href="deletedisplaytype.php?id=<?php echo $row['id'];?>"><img src="delete.jpg" width="20px"></a></td>

Otherwise, code looks correct.

answered Jun 23, 2017 at 9:44
Sign up to request clarification or add additional context in comments.

Comments

0

every '<td><input>' you are are not closing input tag your td

<td><input type="text" name = "id[]" value="<?php echo $row['id'] ?>"</td>

after close

<td><input type="text" name = "id[]" value="<?php echo $row['id'] ?>"></td>
answered Jun 23, 2017 at 9:46

Comments

Your Answer

Draft saved
Draft discarded

Sign up or log in

Sign up using Google
Sign up using Email and Password

Post as a guest

Required, but never shown

Post as a guest

Required, but never shown

By clicking "Post Your Answer", you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.