• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

mauro.edgar

Remover Linha

4 mensagens neste tópico

Boas

Tenho o seguinte problema. Tenho uma página a ir buscar os valores à base de dados com o código seguinte:

<table border="1" width="743">'; 
while($rows = mysql_fetch_array($results)) 
{ 
    extract ($rows); echo'
   <tr>
<td width="37">'; echo $id; echo'</td>
<td width="321">'; echo $nome; echo'</td>
        <td width="275">'; echo $b_identidade; echo'</td>
<td width="22"><p align="center"><img border="0" src="visualizar.gif" width="17" height="16"></td>
<td width="24"><p align="center"><img border="0" src="print.gif" width="17" height="16"></td>
<td width="24"><p align="center">
<a href="apagaresidencia.php"><img border="0" src="eliminar.gif" width="17" height="16"></a></td>';
}
   </tr>

Como podem ver, quando clico na imagem de eliminar o registo, tem um link para apagaresidencia.php

Acontece o seguinte os dados estão nome mas a 1ª coluna é o campo ID (AutoIncrement) e por exemplo tenho 3 registos um com ID=43,45,46 e ao clicar no botão da linha do ID=43 ele apaga sempre o último registo(ID=46)....

No ficheiro apagaresidencia.php tenho o seguinte código:

<?php
session_start();
$nid = isset($_POST['id']) ? $_POST['id'] : $_SESSION['id'];
$delete = "DELETE FROM residencia WHERE id = $nid"
$results = mysql_query($delete)
or die(mysql_error());
?>

Acho que me falta alguma coisa para atribuir o ID à linha que quero eliminar, mas não sei como...Se alguém souber ajudar, agradecia.

Abraço

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não podes colocar só $id ou $nome ..  tens de colocar  $rows['id']  $rows['nome'] ....  Porque os resultados estão no array $rows que executaste o query.... tem que ficar assim:

echo '<table border="1" width="743">'; 
while($rows = mysql_fetch_array($results)) 
{ 
    echo'
   <tr>
<td width="37">'; echo $rows['id']; echo'</td>
<td width="321">'; echo $rows['nome']; echo'</td>
        <td width="275">'; echo $rows['b_identidade']; echo'</td>
<td width="22"><p align="center"><img border="0" src="visualizar.gif" width="17" height="16"></td>
<td width="24"><p align="center"><img border="0" src="print.gif" width="17" height="16"></td>
<td width="24"><p align="center">
<a href="apagaresidencia.php"><img border="0" src="eliminar.gif" width="17" height="16"></a></td>';
}
   echo '</tr>';

Assim já funciona!!  ;)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Obrigado, vou experimentar.

Mas olha uma coisa, o outro código que tenho aki na parte do delete está correcta????

Abraço

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora