Ir para conteúdo

POWERED BY:

Arquivado

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

peterlink

[Resolvido] link a href executar uma query

Recommended Posts

Boa tarde estou com uma duvida que é o seguinte. Tenho um script que usa while para pegar uns dados mysql, e do lado de cada linha que ele puxar eu gostaria de acrescenter um botao do lado que ao ser clicado executasse uma query.

 

segue codigo abaixo:

$sql = "SELECT id ,login , nome  FROM login WHERE login != ''";
$aplica = mysql_query($sql);

echo "<table border='1'>
<tr>
<th>BA</th>
<th>CAMPANHA</th>
<th>LOGIN</th>
<th>STATUS</th>
<th></th>

</tr>";

while($row = mysql_fetch_array($aplica))
 {
 echo "<tr>";
 echo "<td>" . $row['id'] . "</td>";
 echo "<td>" . $row['login'] . "</td>";
 echo "<td>" . $row['nome'] . "</td>";
 echo "<td><a href=\"\">Remover</a></td>";
 echo "</tr>";
 }
echo "</table>";

Dai seria nessa linha o botao que eu gostaria de inserir

echo "<td><a href=\"\">Remover</a></form></td>";

 

que ao ser clicado executasse essa query

mysql_query("DELETE id,login,nome FROM login WHERE login='$row[login]'");

 

 

Grato desde jah.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cria uma página delete.php e faz o SQL. No link você passa a página, por exemplo:

 


<a href="delete.php?id=1" title="Remover registro"/>

 

No seu arquivo delete.php, faz mais ou menos assim:

 

<?

$sql = mysql_query("DELETE FROM tabela WHERE id = {$_GET['id']}") or die();
if($sql){
   echo "Dados removidos com sucesso";
}else{
   echo "Erro ao remover registro! " .die();
}

?>

 

É a idéia, faça testes e veja o que lhe retorna. Espero ter sido útil.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fiz desse modo mas nao estou conseguindo fazer o sql executar a query. na verdade desse geito qdo clico ele nao esta executando o if.

passei os dados assim

<td><a href=\"des_login.php?login=$row[login]\"/>Remover</a></td>

e na pagina que recebe com esse if esta assim.

<?php
$sql = mysql_query("DELETE FROM login WHERE login = {$_GET['login']}") or die();
if($sql){
   echo "Dados removidos com sucesso";
}else{
   echo "Erro ao remover registro! " .die();
}
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você tá querendo deletar um usuário, é isso? Explique melhor o que quer fazer, assim fica fácil ajudar.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então, pega aí:

 

<?

$sql = mysql_query("SELECT * FROM tabela WHERE login IS NULL") or die();

echo "
   <table border='1'>
      <tr>
          <th>BA</th>
          <th>CAMPANHA</th>
          <th>LOGIN</th>
          <th>STATUS</th>
          <th></th>
      </tr>
";

while($dados = mysql_fetch_array($sql)){
   echo "
      <tr>
          <td> {$dados['id']}</td>
          <td> {$dados['login']}</td>
          <td> {$dados['nome']}</td>
          <td> <a href='remove.php?id={$dados['id']}'>Remover</a></td>
      </tr>
   ";
}

echo "</table>";

?>

 

remove.php

<?

$sql = mysql_query("DELETE FROM tabela WHERE id = {$_GET['id']}") or die();

if(!sql){
   echo "Erro ao remover dados" .die();
}else{
   echo "Dados removidos com sucesso!";
}

?>

 

Não é garantia que vá funcionar. Só passei a idéia, vê se te ajuda!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se você coloca die() a execução para, nada vai ser mostrado depois.

Faça assim:

$sql = mysql_query("DELETE FROM tabela WHERE id = {$_GET['id']}") or die(mysql_error());

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Faz tanto tempo que não uso essas funções do mysql que eu tinha me esquecido do mysql_error(). kkkkkkkkkkkkkkkkkkkk

Deve ser isso mesmo!

Compartilhar este post


Link para o post
Compartilhar em outros sites

valeu cara isso resolveu o erro de nao entrar no if.

Mas agora o geito que ele esta feito acho q esta errado pois ele nao esta executando a query.

<?
$sql = mysql_query("DELETE FROM login WHERE login = {$_GET['login']}") or die(mysql_error());

if($sql){
   echo "Erro ao remover dados";
}
else{
   echo "Dados removidos com sucesso!";
}

?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não executa a query nem mostra erro?

Coloque isso no início do script:

error_reporting(E_ALL); 
ini_set('display_errors','On');

Compartilhar este post


Link para o post
Compartilhar em outros sites

Problema foi resolvido.

 

So que agora estou com otro problema dentro do meu IF que recebe dados GET dai queria criar um outro if dentro que tivesse um botao que executasse uma query ao clicar

tentei fazer assim e nao funcionou porque ele necessita que eu envie via GET a resposta pra executar a query, mas nao posso fazer isso pq ele teria q ja responder isso de começo na pagina que fica o link por get

vou postar o codigo para voces entender melhor

 

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

$sql = mysql_query("DELETE FROM login  WHERE login = {$_GET['login']} and nome !='Jean'");

if($sql){
if($nome == 'Jean') { echo "Esta ordem ja esta atribuida pelo usuario <br />";
						echo "Deseja desatribuir?";
						echo "<br />";
						echo "<form name=\"form1\" method=\"post\">";
						echo "<input type=\"submit\" id=\"desatribuir\" nome=\"desatribuir\" value=\"Sim\">";
						echo "</form>";
					if($_POST['desatribuir']){
					 mysql_query("DELETE FROM login  WHERE login = {$_GET['login']}");

					echo "<script>alert('Desatribuido do login {$_GET['login']} com sucesso.')
(location='javascript:history.back()')()</script>";
					}

}

else{
   echo "<script>alert('Desatribuido do login {$_GET['login']} com sucesso.')
(location='javascript:history.back()')()</script>";
}
}
else{
	echo "Erro ao remover dados.";
}

?>

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.