ORisonho 0 Denunciar post Postado Maio 3, 2009 Olá pessoal, estou aqui novamente para pedir uma ajuda a vocês, acredito que alguém mais possa ter essa duvida pois estou fazendo meu código na MÃO sem usar aqueles recursos do DREAMWEAVER que ajudam muito, mas pra quem ta aprendendo não "ensina nada", e no meu caso estou pegando a LÓGICA das coisas, por isso a escolha de fazer na MÃO mesmo. Vou mostrar pra vocês o que eu estou fazendo. Eu criei um form para incluir dados no banco: <table width="779" border="0"> <tr> <td class="news2">Inserir Agenda</td> </tr> <tr> <td><form name="form" method="POST" action="confirma_informa.php"> <a class="red">Titulo:</a> <br/><input type="text" name="titulo" class="news"> <br> <br> <a class="red">Informações:</a><br/><textarea rows="2" cols="100" name="informa" class="news"></textarea> <br> <br> <input type="submit" class="news" value="Enviar"> </form></td> </tr> </table> E na mesma página deixo a função para vermos o conteudo desses dados: <?php $sql = "select * from dados order by id asc"; $executar = mysql_query($sql); while ($exibir = mysql_fetch_array($executar)) {; echo " -----------------------------------------------------------<br/>".$exibir['bela']; echo "<span class='red'>Titulo: </span> <span class='news'>".$exibir ['titulo']."</span>"; echo "<br/>"; echo "<span class='red'>Informações: </span> <span class='news'>".$exibir ['informa']."</span>"; echo "<br/>"; echo " <span class='ass'>".$exibir ['data']."</span>"; echo "<br/>"; echo "<form name='form' action='excluir.php'><input type='submit' class='news' value='Excluir'></form>"; } ?> E por final uma pagina para EXCLUIR os dados selecionados: <?php include "conecta.php";?> <?php /* Este exemplo mostra como excluir dados em uma tabela MySQL usando um código PHP. */ // Comando SQL para excluir os dados em uma tabela $sql = "DELETE FROM dados WHERE id"; // Executa o comando SQL $result = mysql_query($sql); // Verifica se o comando foi executado com sucesso if(!$result) die("Falha ao executar o comando: " . mysql_error()); else echo "Dados excluídos com sucesso."; ?>Minha duvida é a seguinte, para quem observou nesse ultimo código que eu mostrei, esta escrito $sql = "DELETE FROM dados WHERE id"; e pela LÓGICA quando ele executa esse comando ele apagada TODOS OS DADOS e não o selecionado, eu gostaria de saber como eu posso fazer para que na hora de apertar EXCLUIR ele apague aquele DADO selecionado, e não todos. A pergunta pode ser boba, mas eu gostaria de entender a lógica de como fazer essa operação. Desde já agradeço a todos que poderem ajudar. Vlw. http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites
Matias Rezende 50 Denunciar post Postado Maio 3, 2009 O comando certo é $id = $_GET['id']// Ou POST, dependendo de onde vem o ID do campo para apagar $sql = "DELETE FROM dados WHERE id = '$id'"; Espero ter ajudado Carlos Eduardo Compartilhar este post Link para o post Compartilhar em outros sites
ORisonho 0 Denunciar post Postado Maio 3, 2009 O comando certo é $id = $_GET['id']// Ou POST, dependendo de onde vem o ID do campo para apagar $sql = "DELETE FROM dados WHERE id = '$id'"; Espero ter ajudado Carlos Eduardo Obrigado, eu fiz isso, mas ele EXECUTA mas não APAGA, acho que deve ser algum comando no codigo que MOSTRA O CONTEUDO que deve ter para mandar para a variavel $id que esta no arquivo de excluir. Se alguem poder ajudar...desde já agradeço. Compartilhar este post Link para o post Compartilhar em outros sites
fetish 3 Denunciar post Postado Maio 3, 2009 Se não está funcionando, deve ser a variavel que você ta utilizando... ela não deve estar pegando o VALOR para deletar o campo selecionado. Eu chuto um método: $sql = "DELETE FROM `dados` WHERE `id` = `id`"; @Edit Só que no meu método acima vai deletar todos os campos id's Compartilhar este post Link para o post Compartilhar em outros sites
ORisonho 0 Denunciar post Postado Maio 3, 2009 Se não está funcionando, deve ser a variavel que você ta utilizando... ela não deve estar pegando o VALOR para deletar o campo selecionado. Eu chuto um método: $sql = "DELETE FROM `dados` WHERE `id` = `id`"; @Edit Só que no meu método acima vai deletar todos os campos id's Consegui achar aqui...e vou compartilhar com vocês. Primeiro eu tive que alterar o codigo do CONTEUDO PARA VERMOS OS DADOS. <?php $sql = "select * from dados order by id asc"; $executar = mysql_query($sql); while ($exibir = mysql_fetch_array($executar)) { $id = $exibir["id"]; echo " </br>-----------------------------------------------------------<br/>".$exibir['bela']; echo "<span class='red'>Titulo: </span> <span class='news'>".$exibir ['titulo']."</span>"; echo "<br/>"; echo "<span class='red'>Informações: </span> <span class='news'>".$exibir ['informa']."</span>"; echo "<br/>"; echo " <span class='ass'>".$exibir ['data']."</span>"; echo "<br/>"; echo "<span class='red'>Número ID: </span> <span class='news'>".$exibir ['id']."</span></br>"; echo "<a href=\"excluir.php?id=$id\" class='arquivos'>[ Excluir ]</a>"; }?> Como podem comparar com o codigo anterior eu adicionei $id = $exibir["id"]; Que denomina o ID selecionado para apaga-lo E adicionei também dentro de ECHO o seguinte código echo "<a href=\"excluir.php?id=$id\" class='arquivos'>[ Excluir ]</a>";Essa função linka o EXCLUIR de maneira que ele ache o ID selecionado. Por ultimo eu fiz uma pequena alteração apenas para podermos ver o numero da ID na tela, echo "<span class='red'>Número ID: </span> <span class='news'>".$exibir ['id']."</span></br>"; Na página EXCLUIR.PHP eu fiz o seguinte como vocês mesmos tinham me indicado: <?php include "conecta.php";?> <?php /* Este exemplo mostra como excluir dados em uma tabela MySQL usando um código PHP. */ $id = $_GET['id'];// Ou POST, dependendo de onde vem o ID do campo para apagar // Comando SQL para excluir os dados em uma tabela $sql = "DELETE FROM dados WHERE id='$id'"; // Executa o comando SQL $result = mysql_query($sql); // Verifica se o comando foi executado com sucesso if(!$result) die("Falha ao executar o comando: " . mysql_error()); else echo "<span class='news2'>Dados excluídos com sucesso.</span>"; ?>E assim eu entendi a LÓGICA, na linha $id = $_GET['id'];Que "pega" o ID para interpreta-lo e manda-lo para o seguinte codigo: $sql = "DELETE FROM dados WHERE id='$id'"; E o resto vocês já sabem, se eu errei em algum comentário sobre o código peço por favor que me corrijam, pois ainda estou no aprendizado. Agora tenho uma ultima duvida, eu fiz um codigo para na pagina que MOSTRA as informações mostrar o NUMERO em SEQUENCIA (não o numero do ID pois esse sempre irá mudar quando apaga e adiciona algum dado), esse numero SEQUENCIAL é apenas para ORIENTAÇÃO, é um numero FIXO, mas eu fiz isso, da seguinte maneira: <?php for ($i=1; $i<17; $i++) { echo "\"$i\","; } ?>Mas quando eu faço isso ele fica REPETINDO os números, eu queria que ele ENUMERACE de acordo com o numero de cadastro que existe... Exemplo: Eu tenho uma tabela chamada dados que tem os campos ID, TITULO, INFORMAÇÕES, então eu tenho um mínimo de 1 e Maximo de 17 de cadastros nessa tabela para mostrar, mas só tem 15, então ele vai mostrar 1,2,3...até 15 e somente, se apagar alguma informação do banco ela volta para 14, adicionar ela aumenta, naturalmente obedecendo o numero que existe, sem repetições. Desde já agradeço pela ajuda e espero ter contribuído. http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites
fetish 3 Denunciar post Postado Maio 3, 2009 Uhm, nem tinha reparado :D, enquanto ao seu problema com enumeração, faça o seguinte: <?php $sql = "SELECT * FROM `teste` WHERE `id` = '$id""; $counter = mysql_num_rows (mysql_query($sql)); for ($i = 1;$i < $counter;$i++) echo $i.$id; ?> É só fazer a mesma coisa com os outros campos. Compartilhar este post Link para o post Compartilhar em outros sites
ORisonho 0 Denunciar post Postado Maio 3, 2009 Uhm, nem tinha reparado :D, enquanto ao seu problema com enumeração, faça o seguinte: <?php $sql = "SELECT * FROM `teste` WHERE `id` = '$id""; $counter = mysql_num_rows (mysql_query($sql)); for ($i = 1;$i < $counter;$i++) echo $i.$id; ?> É só fazer a mesma coisa com os outros campos. Dei uma ageitada no codigo que estava com pequenos erros de digitação, mas mesmo assim não esta funcionando?Fica ai a correção que eu fiz: <?php $sql = "SELECT * FROM dados WHERE id = '$id'"; $counter = mysql_num_rows (mysql_query($sql)); for ($i = 1;$i < $counter;$i++) echo $i.$id; ?>Na tela mostra os seguintes mensagens de erros: Warning: mysql_query() [function.mysql-query]: Access denied for user 'ODBC'@'localhost' (using password: NO) Warning: mysql_query() [function.mysql-query]: A link to the server could not be established in Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in Um pequeno lembrete, que eu coloquei esse codigo que você me deu dentro da mesma pagina que MOSTRA as INFORMAÇÕES do BANCO, significando que minha conexão com o banco no que se trata de LOGIN, SENHA, BANCO DE DADOS na pagina esta totalmente NORMAL. Desde já agradeço a ajuda. http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites
fetish 3 Denunciar post Postado Maio 3, 2009 Ai já não é comigo, mais se quiser fazer pelo seu método, dá certo tambem: <?php for ($i = 1;$i <= 17;$i++) echo $i.$id; ?> Compartilhar este post Link para o post Compartilhar em outros sites
ORisonho 0 Denunciar post Postado Maio 3, 2009 Ai já não é comigo, mais se quiser fazer pelo seu método, dá certo tambem: <?php for ($i = 1;$i <= 17;$i++) echo $i.$id; ?> Beleza... desde já agradeço pela ajuda, e espero sempre poder ajudar assim como vocês http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites
andersonseifert 10 Denunciar post Postado Abril 15, 2013 Galera qual é o codigo correto ai ... Compartilhar este post Link para o post Compartilhar em outros sites
Ricardo Barantini 33 Denunciar post Postado Abril 15, 2013 Galera qual é o codigo correto ai ... $sql = "DELETE* FROM `teste` WHERE `id` = '".$id."'"; Compartilhar este post Link para o post Compartilhar em outros sites