CREATE TABLE gvnews ( id int(5) unsigned NOT NULL auto_increment, titulo varchar(255) NOT NULL, data date NOT NULL, texto text, PRIMARY KEY (id) ) ENGINE = INNODB; CREATE TABLE gvnews_img ( id int(5) unsigned NOT NULL auto_increment, id_news int(5) unsigned NOT NULL, imagem text, PRIMARY KEY (id), INDEX (id_news), FOREIGN KEY (id_news) REFERENCES gvnews(id) ON DELETE CASCADE ) ENGINE = INNODB;
O código que estou utilizando é este:
<?php include ("include/conecta.php"); require_once("verifica.php"); $id = $_GET["id"]; if($_GET["acao"] == excluir){ $consulta = mysql_query("SELECT * FROM gvnews_img WHERE id_news = $id"); $resultado = mysql_fetch_object($consulta); $sql = "DELETE gvnews,gvnews_img FROM gvnews INNER JOIN gvnews_img WHERE gvnews.id=$id AND gvnews_img.id_news=$id"; $del = mysql_query($sql)or die(mysql_error()); if( $del ){ if(is_file($resultado->imagem)){ unlink($resultado->imagem); } } } ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Untitled Document</title> </head> <body> <table width="182" border="0" cellspacing="0" cellpadding="0"> <?php $dados = mysql_query("SELECT * FROM gvnews ORDER BY data DESC"); $conta = mysql_num_rows($dados); if($conta == "0"){ echo "Sem noticias cadastradas"; } else { ?> <tr> <td width="47">ID</td> <td width="135">Status</td> </tr> <?php while($linha=mysql_fetch_array($dados)){ $id = $linha["id"]; ?> <tr> <td><?php echo "$id" ?></td> <td><a href="?cat=gvnews&acao=excluir&id=<?php echo $id; ?>">Excluir</a></td> </tr> <?php } } ?> </table> </body> </html>
Qaulquer ajuda ou dica eu agradeço.
RESOLVIDO
<? include ("include/conecta.php"); require_once("verifica.php"); $id = $_GET["id"]; if($_GET["acao"] == excluir){ $consulta = mysql_query("SELECT * FROM gvnews_img WHERE id_news = $id"); while($resultado = mysql_fetch_object($consulta)){ unlink($resultado->imagem); } $sql = "DELETE gvnews,gvnews_img FROM gvnews INNER JOIN gvnews_img WHERE gvnews.id=$id AND gvnews_img.id_news=$id"; $del = mysql_query($sql)or die(mysql_error()); } ?>