Ir para conteúdo

POWERED BY:

Arquivado

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

santosbio

[Resolvido] Passar variável do PHP pra função Javascript ao clica

Recommended Posts

Gente, é o seguinte.

Tenho uma página em php onde são exibidos os resultados de uma tabela mysql.

Nesse código, existe um botão para excluir o registro. Preciso exibir um alerta antes de excuí-lo.

 

No header da minha página, coloquei a função responsável por exibir o alerta:

<script LANGUAGE="JavaScript" TYPE="text/javascript">
function excluir() {
confirm("Tem certeza que deseja excluir essa notícia?!");
if (excluir){
   window.location = "excluir.php?id=$id";
} else {
   alert ("Ação cancelada!");
}
}
</SCRIPT>

 

A linha window.location = "excluir.php?id=$id"; seria responsável por redirecionar para a página de exclusão, que excluiria a notícia que contivesse o id passado pelo parâmetro $id.

 

Alguém sabe como fazer isso?

 

Obs.: o redirect acontece, mas o ID não é passado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Levando em consideracao qeu $id é uma variavel do PHP e que ela ja esta definida

 

mude

window.location = "excluir.php?id=$id";

 

para

window.location = "excluir.php?id=<?php echo $id; ?>";

Compartilhar este post


Link para o post
Compartilhar em outros sites

Levando em consideracao qeu $id é uma variavel do PHP e que ela ja esta definida

 

mude

window.location = "excluir.php?id=$id";

 

para

window.location = "excluir.php?id=<?php echo $id; ?>";

 

Olha... essa variável está dentro de um while (pois cada registro exibido tem um id próprio).

Fiz o que você me aconselhou e deu quase certo... quando clico em um link dele exclusão ele até exclui, só que não exclui o item que eu queria (e sim, o último item do while).

 

Tenho que colocar algo específico no link, ou devo fazer apenas assim:

<a href='javascript:excluir();'>Excluir</a>

 

Pela lógica, eu teria que colocar no link alguma coisa que referenciasse ao id do item, mas não sei bem o que. Não tenho muito conhecimento de javascript, e já procurei por referências na web e não encontrei nenhum caso semelhante.

Compartilhar este post


Link para o post
Compartilhar em outros sites

faça o seguinte entao

 

esse codigo vai fora do while, abaixo dele

 

function excluir(id) {
confirm("Tem certeza que deseja excluir essa notícia?!");
if (excluir){
   window.location = "excluir.php?id="+id;
} else {
   alert ("Ação cancelada!");
}
}

 

e no link de cada registro, que é exibido no while

<a href='javascript:excluir("<?php echo $id; ?>");'>Excluir</a>

 

isto deve resolver ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites
faça o seguinte entao esse codigo vai fora do while, abaixo dele
 function excluir(id) { confirm("Tem certeza que deseja excluir essa notícia?!"); if (excluir){ window.location = "excluir.php?id="+id; } else { alert ("Ação cancelada!"); } } 

e no link de cada registro, que é exibido no while

 <A href='javascript:excluir("<?php echo $id; ?>");'>Excluir</A> 

isto deve resolver ;)

Estamos chegando lá... heheheh... Agora ele exclui direitinho, só que, quando cancelo a ação, ele exclui do msm jeito.... ¬¬

Obs.: o alerta contido no else nem é exibido...

 

tentei igualar o "excluir" do if à boleana "true". Dessa forma, ele cai pro else direto, não importa o que eu escolha.

 

Tipo, quando eu clico em ok, qual valor o javascript retorna? Sabendo isso, seria mais fácil pra setar as condicionais.

 

*************************************

UPDATE

*************************************

 

Agora sim.... \o/

 

fiz uns ajustes no meu script, ficou assim:

<script type="text/javascript">
 function excluir(id) {
  if (window.confirm("Tem certeza que deseja excluir essa notícia?!")){;
    window.location.href = "excluir.php?id="+id;
  } else {
               return false;
        }
 }
</script>

 

 

Obrigado a todos que me ajudaram.

Moderadores, podem fechar o tópico.

:D

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.