Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Wagner Bianchi

Preciso retornar dados do banco mas com um

Recommended Posts

Olá Galera, Seguinte, vou retornar alguns dados do banco (MySQL), mas preciso além de retornar, ter um DELETE em cada mesagem retornada. Tipo, um exemplo:Na tabela tenho:id_usernome_user;email_user; Daí fiz assim:<?php//conectandoinclude "lib/config.php";//consultando o banco$sql = ("SELECT * FROM users");while ($query = mysql_fetch_array($sql)){ echo ' <table align="center" width="400" border="1"> <tr> <td>'.$query['nome_user'].'</td> </tr> <tr> <td><a href="mailto:'.$query['email_user'].'">'.$query['email_user'].'</td> </tr> </table> ';}?> Como colocar um delete nesse código??? Alguém pode me dar um toque??Obrigado!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Coloca um link para uma página que faça essa exclusão.Ex.: deletar.php?id=$IDDaí no arquivo deletar.phpVocê pega o ID e faz a exclusão.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tudo bem, vamos lá: Olha só, o doc que estou salvando tem esse nome: deleter.php?id_mensagem=$id_mensagem , tá certo isso?? Daí, quando tento salvar com esse nome em meu editor, a parada não salva.eheheheh Se puderem me dar uma explicação quanto a isso, valeu mesmo!!Obrigado!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

de você estiver querendo deletar tudo.

 

dentro do while no final coloque Delete from users where id_user='$ID';

 

mas se você quizer escolher um coloque um link depois de cada opção.

 

while ($query = mysql_fetch_array($sql))

{

echo '

<table align="center" width="400" border="1">

<tr>

<td>'.$query['nome_user'].'</td>

</tr>

<tr>

<td><a href="mailto:'.$query['email_user'].'">'.$query['email_user'].'</td>

</tr>

<tr>

<td><a href="deletar.php?id='.$query['id_user'].'">deletar</td>

</tr>

 

</table>

';

}

deletar.php

$id=$_GET['id'];

 

Delete from users where id_user='$id';

agora se você quizer passar escondido vai ter que utilizar um formulário.

 

Acho que isso funciona, tenta ae

Compartilhar este post


Link para o post
Compartilhar em outros sites

Opa,

 

é noixxx (hoje eu tô um saco, desculpe...)

 

Olha só, esse source:

 

$id=$_GET['id'];

 

Delete from users where id_user='$id';

 

Esse DELETE é só assim mesmo, não tem que colocar uma variável recebendo a query como string??

 

tipo: $sql = mysql_query ("Delete from users where id_user='$id'");

if (!($sql))

{

echo "Fanhô!";

}else{

echo "Deu certo!";

}

 

Fiz assim, mas só dá "FANHÔ" eheheheh, tenho que retonar o id na primeira tela em um campo hidden???

 

Edição---------------

 

Bom, coloquei o campo hidden pegando o id_mensagem do banco blog...tá retornando "Deu Certo", mas ao retornoar a tela principal, posso visulaizar que não houve exclusão, o que pode estar acontecendo???

 

MUITO, MAS MUITO OBRIGADO!! http://forum.imasters.com.br/public/style_emoticons/default/joia.gif

 

Obrigado!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

echo $id; // para ver se tem algo dentro do id$query="delete from users where where id_user='$id'mysql_query($query) or die ("Erro na query: $query. " .mysql_error());faz desse jeito e ve oque retorna.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ronan e galera,

 

Adicionei ao meu source o que faltava, em comparação com o que o Ronan me passou e continua da mesma forma...não acontece a exclusão e não retorna nehum erro. . .

 

O que será??

 

O source:

 

o banco de dados:

 

tabela: mensagem

-- Estrutura da tabela `mensagem`
-- 

CREATE TABLE `mensagem` (
 `id_mensagem` int(11) NOT NULL auto_increment,
 `nome` varchar(50) NOT NULL default '',
 `email` longtext NOT NULL,
 `data` date NOT NULL default '0000-00-00',
 `mensagem` longtext NOT NULL,
 PRIMARY KEY  (`id_mensagem`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=20 ;

--

 

index.php

PHP

[*]

[*]

[*]//não postei as conexões mas elas existem no source

[*]

[*]$sql = mysql_query("SELECT * FROM mensagem ORDER BY id_mensagem");

[*]while($mostra = mysql_fetch_array($sql))

[*]{

[*] echo '

[*] <table align="center" valign="top" width="772" cellspacing="0" cellpadding="0" border="0">

[*] <tr>

[*]  <td><hr></td>

[*]  <td><hr></td>

[*] </tr>

[*] <tr>

[*]  <td><a href="deleter.php?id_mensagem=$id_mensagem">Excluir Mensagem</a></td>

[*] </tr>

[*] <tr>

[*]  <td width="250" align="left" valign="middle"><b>Nome:  </b>'.$mostra['nome'].'</td>

[*]  <td width="250" align="left" valign="middle"><b>Email:  </b><a href="mailto:'.$mostra['email'].'">'.$mostra['email'].'</a></td>

[*] </tr>

[*] <tr>

[*]  <td width="350" align="left" valign="middle"><b>Data:  </b>'.$mostra['data'].'</td>

[*]  <td width="350" align="left" valign="middle"><b><br><br>Mensagem</b>:  '.$mostra['mensagem'].'</td>

[*] </tr>

[*]  <td width="350" align="left" valign="middle"><input type="hidden" value="'.$mostra['id_mensagem'].'"></td>

[*] <tr>

[*]  <td><hr></td>

[*]  <td><hr></td>

[*] </tr>

[*] </table>

[*]  ';

[*]}

[*]?>

[*]

 

Agora vamos deletar o que temos já armazenado na tabela.

 

deleter.php

PHP

[*]

[*]

[*]//não postei as conexões mas elas existem no source

[*]

[*]echo "<br><br>";

[*]

[*]$id_mensagem=$_GET['id_mensagem'];

[*]

[*]$sql = mysql_query ("DELETE FROM mensagem where id_mensagem='$id_mensagem'") or die ("Erro na query: $query. " .mysql_error());

[*]if (!($sql))

[*]{

[*] echo "Fanhô!";

[*]}else{

[*] echo "Deu certo!";

[*]}

[*]

[*]

 

O que pode faver de errado??? :(

 

Muito obrigado mesmo!!!

 

Valeu!!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

nao deu nehum erro na SQL?

<{POST_SNAPBACK}>

Não cara, agora fiz assim, só para testar:

 

PHP

[*]echo "<br><br>";

[*]

[*]$id_mensagem=$_GET['id_mensagem'];

[*]$nome=$_GET['nome'];

[*]$email=$_GET['email'];

[*]$data=$_GET['data'];

[*]$mensagem=$_GET['mensagem'];

[*]

[*]$sql = mysql_query ("DELETE FROM mensagem where id_mensagem='$id_mensagem' 

[*]AND nome='$nome' 

[*]AND email='$email' 

[*]AND data='$data' 

[*]AND mensagem='$mensagem'") or die ("Erro na query: $query. " .mysql_error());

[*]if (!($sql))

[*]{

[*] echo "Fanhô!";

[*]}else{

[*] echo "Deu certo!";

[*]}

 

Não deleta o conteúdo que quero excluir... :huh:

 

Putzzz, o que será??

 

Obrigado velho!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tipo, a página agora ficou em branco, simui até os testes com o IF. . . :wacko: :wacko: :wacko: :wacko: :wacko: Tipo, o lance é que, fiz um teste com um blog que eu tenho aqui (o source postado). . .depois, criei um novo exemplo para testar, mas acontece a mesma coisa, não exclui o registro da tabela.Tá fod. . .O action não tem nada a ver com isso não néh?? Ele está definido como post para que os inserts funcionem. . .Se puderem ajudar aí. . .valeu!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Galera, Dei um echo $_GET['id_user']; na página do DELETE e não apareceu nada. Acho que deveria aparecer o id a ser deletado não??? Me parece que não está sendo passado nenhum id a query, por isso não está deletando. Alguma ajuda??Obrigado!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.