2015-04-25 2 views
0

В моем проекте я хочу операцию удаления для определенного идентификатора, когда я нажимаю кнопку удаления, но он не выполняется. Вот мой код для отображения таблицы:Почему моя операция удаления не выполняется?

<table class="listing" cellpadding="0" cellspacing="0"> 
     <tr> 
     <th class="first"><center>Id</center></th> 
     <th>Category Name</th> 
     <th>Status</th> 
     <th>Edit</th> 
     <th class="last">Delete</th> 
     </tr> 
    <?php 
    include('config.php'); 
    $sql="select * from category_tbl"; 
    $result=mysql_query($sql); 
    while ($row=mysql_fetch_array($result)) { 
if($row['cat_status'] == 0) { 
    $im='<a href="category.php?false='.$row["cat_id"].'"><img src="../images/red.jpg" height="28" width="28"></a>'; 
    } 
    else{ 
     $im='<a href="category.php?true='.$row["cat_id"].'"><img src="../images/green.jpg" height="30" width="30"></a>'; 
    } 
    if (isset($_REQUEST['false'])) { 
     $updt=mysql_query("update category_tbl set cat_status=1 where cat_id='".$_REQUEST['false']."'"); 
     header('location:category.php'); 
    } 
    if (isset($_REQUEST['true'])) { 
     $updt=mysql_query("update category_tbl set cat_status=0 where cat_id='".$_REQUEST['true']."'"); 
     header('location:category.php'); 
    } 
    ?> 
    <tr> 
     <td><strong><?php echo $row['cat_id'];?></strong></td> 
     <td><strong><?php echo $row['cat_name'];?></strong></td> 
     <td><?php echo $im;?></td> 
     <td><a href="update_cat.php?id=<?php echo $row['cat_id'];?>"><img src="../images/edit.jpg" height="30" width="60" value=<?php echo $row['cat_id'];?>></a></td> 
     <td><a href="delete_cat.php?id=<?php echo $row['cat_id'];?>"><img src="../images/delete1.jpg" height="30" width="60" value=<?php echo $row['cat_id'];?>></a></td> 
    </tr> 
    <?php 
    } 
    ?> 
    </table> 

Операция редактирования работает, но удалить ее нет. Это мой код для удаления:

<?php 
include("config.php"); 
$id=$_REQUEST['id']; 
$sql=mysql_query("DELETE FROM category_tbl WHERE cat_id='".$id."'"); 
if ($sql) { 
    header("location:category.php"); 
} 
?> 

После выполнения он остается на delete_cat.php?id=(passed id)....

+0

что ваш 'cat_id' поле в БД? «целое» или «варчар»? И сделайте это изменение, чтобы проверить ** ошибки mysql **: '$ sql = mysql_query (" DELETE FROM category_tbl WHERE cat_id = '". $ Id."' ") ИЛИ die (mysql_error());' –

+2

Является ли строка удалены в базе данных? И у вас проблема с SQL-инъекцией. – jeroen

+0

нет, он не удален из базы данных ... и мой cat_id является целым ... –

ответ

1

Я думаю, вам нужно удалить внешний ключ из подкатегории или второй вариант - вам нужно изменить свой запрос и установить такой каскад.

ON DELETE CASCADE

для получения дополнительной помощи посетить этот link

+0

спасибо bhavesh rangani .... за вашу помощь ... –

+0

добро пожаловать в любое время брата. –

Смежные вопросы