Ir para conteúdo

POWERED BY:

Arquivado

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

g4briell4

[Resolvido]  com excluir

Recommended Posts

Oi,

 

Não sei onde estou errando, aglém dá um help em corrigir meu código?

 

Ele abre a janela, pergunta, diz que excluiu, mas não exclui de verdade e no topo da página parece que não está "levando" o id junto.

 

Eu só quero conseguir colocar uma janela de aviso antes de excluir direto :)

 

 

JavaScript

<script language="JavaScript">

function confirma(id) {

var mensagem = "Confirma excluir?";

if (confirm (mensagem)) {

document.location.href = "pag.php?g=news/news_del.php&id=<? print ($_REQUEST['id']); ?>";

}

}

</script>

 

news_del.php

include "config.php";

 

$sql = "DELETE FROM `news` WHERE id='$_REQUEST[id]'";

$resultado = mysql_query($sql) or die ("Erro ao remover informações.");

 

if (!mysql_error()) {

header("Location: pag.php?g=news/news.php");

}

else {

echo mysql_error();

}

 

 

Obrigada!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não aparece o id?

 

então há algum problema com isso aqui ó "<? print ($_REQUEST['id']); ?>";

você tem certeza que está recebendo essa variavel?

 

poste mais detalhes do codigo. de onde vem essa variavel pra começar.

 

e põe o código entre

[/code] pra ficar mais facil entender,

tipo assim:

[code]
	//codigo(com indentação e tudo)

:P

 

hehe. Aguardamos mais detalhes.

Compartilhar este post


Link para o post
Compartilhar em outros sites

tenta usa get

 

JavaScript

<script language="JavaScript">
function confirma(id) {
var mensagem = "Confirma excluir?";
if (confirm (mensagem)) {
document.location.href = "pag.php?g=news/news_del.php&id=<?php echo $['id']; ?>";
}
}
</script>

news_del.php
include "config.php";

$sql = "DELETE FROM `news` WHERE id='$_GET['id']'";
$resultado = mysql_query($sql) or die ("Erro ao remover informações.");

if (!mysql_error()) {
header("Location: pag.php?g=news/news.php");
}
else {
echo mysql_error();
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ainda não consegui :(

 

Vou colocar mais detalhes para ver se conseguem me ajudar! Obrigada!

 

No arquivo que lista os registro, está assim:

CODE
<?php

 

include "config.php";

 

$sql = "SELECT * FROM news ORDER BY id ASC" or die(mysql_error());

$resultado = mysql_query($sql) or die(mysql_error());

$num_lista = mysql_num_rows($resultado);

 

?>

<head>

<script language="JavaScript">

function confirma(id) {

var mensagem = "Confirma excluir?";

if (confirm (mensagem)) {

document.location.href = "pag.php?g=news/news_del.php&id=<?php echo $_GET['id']; ?>";

}

}

</script>

 

</head>

 

<boby>

 

o link...

<a href="java script:confirma();">excluir</a>

 

</body>

Ao clicar no link excluir ao invés de excluir direto sem se certificar, estou tentando colocar o aviso.

 

Ele está abrindo a janela, eu clico e direciona para esta página abaixo, porém não remove os dados.

 

Observo que nesta passagem não está "levando" o id. Por isso se perde, tá ai a questão que não consigo resolver.

 

CODE
<?php

 

include "config.php";

 

$sql = "DELETE FROM `news` WHERE id='$_GET['id']'";

$resultado = mysql_query($sql) or die ("Erro ao remover informações.");

 

if (!mysql_error()) {

header("Location: pag.php?g=news/news.php");

}

else {

echo mysql_error();

}

?>

 

Obrigada!

Gab

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Gabriela.

Deveria dar um erro aí, provavelmente você não está reportando os mesmos.

Então coloca no início do código:

error_reporting(E_ALL);
A linha que está errada é esta:

$sql = "DELETE FROM `news` WHERE id='$_GET['id']'";
Deve ficar assim:

$sql = "DELETE FROM `news` WHERE id='{$_GET['id']}'";
Sempre que tiver problemas com a execução de querys, printa elas e roda em um cliente mysql como "ems sql manager" ou "mysql query browser" pra ver o que acontece.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Oi, obrigada, mas tentei das duas formas e não conseguimos...continua igual... :(

 

O que fico pensando é que no topo da página ele continua sem "levar o id"...acredito que seja ai o problema, pq de alguma forma o código passa como correto e não executa fisicamente.

 

Observe como fica:

 

http://www.sitetal.com.br/adm/pag.php?g=news/news_del.php&id=

 

Ajuda diiinovo!!!

 

Gab

Compartilhar este post


Link para o post
Compartilhar em outros sites

O problema é que não há valor para a variável $_GET[´id´].

Compartilhar este post


Link para o post
Compartilhar em outros sites

Segue abaixo a solução:

 

no link para deletar, adicione isso: Onclick="java script:confirma();"

 

<script language="JavaScript">
function confirma() {
var mensagem = "Confirma excluir?";
if (confirm(mensagem)==1) {
window.location = "home.php?g=gtr_news/news_del.php&id=<?=$linha[id];?>";
}else{
window.alert("Cancelou por quê!?");
}
}
</script>

o php fica assim:

 

<?
$id=$_GET["id"];
include "config.php";

$sql = "DELETE FROM news WHERE id='$id'";
$resultado = mysql_query($sql) or die ("Erro ao remover informações.");

if (!mysql_error()) {
header("Location: pag.php?g=news/news.php");
}
else {
echo mysql_error();
}
?>

Abraços.

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.