Ir para conteúdo
Fórum Script Brasil
  • 0

Que lindo! DELETE diz que deu tudo certo mas não fez nada!


Elvys Pereira

Pergunta

:wacko:

Só vou falar..

Eu tenho uma página que manda um link com um id de um registro, para que ele seja apagado..

(...)<a href="teste.php?id=$id">(...)
Aí em cima, esse id se pega de um dado em uma tabela normal... Aí, na página teste.php, tem esse codigo:
<?
$id = $_GET['id'];

include("config.php");
$query = mysql_query("DELETE FROM '3b_trabalhos' WHERE '3b_trabalhos'.'id' = $id LIMIT 1;");
echo "Registro excluído!";


?>

Quem disse que vai?

Aparece 'REGISTRO EXCLUÍDO', mas quando eu vou olhar na paginação ainda está lá.

Alguma ideia, por favor?

Link para o comentário
Compartilhar em outros sites

8 respostass a esta questão

Posts Recomendados

  • 0

Cara.

Pra saber mais detalhes de porque está dando erro, na parte do else, em que manda imprimir que deu erro, coloca assim:

echo "deu erro: ".mysql_error();

Imprimirá uma mensagem de retorno do MySQL que poderá te dizer o que está acontecendo que está dando erro.

Link para o comentário
Compartilhar em outros sites

  • 0

Olha, usei esse código:

<?
$id = $_GET['id'];

include("config.php");
$query = "DELETE FROM '3b_trabalhos' WHERE '3b_trabalhos'.'id' = $id LIMIT 1;";
$exe_query = mysql_query($query);

if($exe_query) { echo "Registro excluído!"; }
else {echo "Deu erro: ".mysql_error();}

?>
(Me virei =] ) E aí, finalmente apareceu esse lindo erro:
Deu erro: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''3b_trabalhos' WHERE '3b_trabalhos'.'id' = Resource id #6 LIMIT 1' at line 1

Link para o comentário
Compartilhar em outros sites

  • 0
Troca isso:

$query = "DELETE FROM '3b_trabalhos' WHERE '3b_trabalhos'.'id' = $id LIMIT 1;";

Por isso:

$query = "DELETE FROM 3b_trabalhos WHERE id = '$id'";

Elvys Pereira,

Você está usando aspas no nome da tabela quando deveria usar crase, que é o mais indicado porque sua tabela começa com um caracter diferente de alfabético.

Assim:

$query = "DELETE FROM `3b_trabalhos` WHERE id = $id;";

Seria o mais correto.

Link para o comentário
Compartilhar em outros sites

  • 0

Deu erro: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'id #6' at line 1

Então, eu fiz assim:

$query = "DELETE FROM `3b_trabalhos` WHERE id = '$id'";//(com aspas o $id)
Aí, disse 'REGISTRO EXCLUIDO', mas não excluiu, o registro continua lá! :@ Então, coloquei LIKE, mas deu o mesmo resultado. Socorro?
<?
$id = $_GET['id'];

include("config.php");
$query = "DELETE FROM `3b_trabalhos` WHERE id LIKE '$id'";
$exe_query = mysql_query($query);

if($exe_query) { echo "Registro excluído!"; }
else {echo "Deu erro: ".mysql_error();}

?>

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...