Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #57 da revista programar. Faz já o download aqui!

blackpower

criar botao para apagar user

Mensagens Recomendadas

blackpower    0
blackpower

bem ando de volta disto e ninguém consegue ajudar eu criar um botão em que quando carregasse apagava uma linha da base de dados mas o k consegui fazer e apagar a tabela toda que mt mau.

códico da parte de tabela:

<head>
<title>CSS Tables</title>
<link href="styles.css" rel="stylesheet" type="text/css" />
</head>

<body>
<?php
$conn = mysql_connect("localhost","root","") or die (mysql_error());
mysql_select_db("pap",$conn) or die (mysql_error());
$query = "SELECT * FROM perfil ORDER BY user";
$result = mysql_query ($query) or die (mysql_error());
?>

<table id="mytable" cellspacing="0" summary="">
  <tr>
    
<th scope="col" abbr="Nome">Nome</th>
<th scope="col" abbr="Password">Password</th>
<th scope="col" abbr="Admin">Admin</th>


  
  </tr>
  <?php
while($row = mysql_fetch_assoc($result)){
echo '<tr><td>'.$row ["user"].'</td>';
echo '<td>'.$row ["pass"].'</td>';
echo '<td>'.$row ["admin"].'</td><td>';
echo '<form METHOD ACTION="connapagaruser.php">
<input type=submit value="Apagar" name=apagar>';
}
mysql_free_result ($result);
mysql_close($conn);

?>
</table>
</body>
</html>


codico apagar:
<?php

$con = mysql_connect("localhost","root","");

mysql_select_db("pap", $con);

mysql_query("DELETE FROM perfil where user=='$user' ");

mysql_close($con);

?>

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
psiico    1
psiico

tens q fazer 1 delete na base de dados pelo nome ou ID da tabela.

ex:

mysql_query("DELETE FROM users where ID='Nome da pessoa'");

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
infopc    0
infopc

O problema está mesmo nos dois sinais de igual (==) deves usar so um, se for um campo varchar podes tambem usar LIKE

EX:

DELETE FROM `tabela_a_apagar` WHERE `campo_de_verificacao` LIKE 'string';

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
infopc    0
infopc

Já agora tenta assim

<?php
//ficheiro do formulario
while($row = mysql_fetch_assoc($result)){

echo '<form method="post" action="connapagaruser.php">
<tr>
<td><input type="hidden" name="user" value="'.$row ["user"].'" />'.$row ["user"].'</td>
<td>'.$row ["pass"].'</td>
<td>'.$row ["admin"].'</td>
<td><input type="submit" value="apagar" /></td>
</tr>
</form>';
}
mysql_free_result ($result);
mysql_close($conn);

?>

<?php
//ficheiro connapagaruser.php

$con = mysql_connect("localhost","root","");
mysql_select_db("pap", $con);
mysql_query('DELETE FROM perfil where user=\''.$_POST['user'].'\';');
mysql_close($con);

?>

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
blackpower    0
blackpower

peço desculpa pelo portugues,

e o seguinte como sei k nakela linha da dados quando carregar no botao para delete ele so vai mesmo apagar so mente aquela linha.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites
naoliveira    0
naoliveira

Se o campo for único, só apaga uma linha visto não poder haver entradas duplicadas nesse campo e aí esta instrução do psiico funciona:

mysql_query('DELETE FROM perfil where user=\''.$_POST['user'].'\';');

Se puderes ter dados duplicados nesse campo acrescenta o LIMIT 1 à instrução do psiico:

mysql_query('DELETE FROM perfil where user=\''.$_POST['user'].'\' LIMIT 1;');

neste caso garantes que só apagas uma linha, mas não sabes qual. Para apagares a linha que queres, tens de encontrar uma forma de fazeres um DELETE com os dados que te garantam que é mesmo aquela linha para apagar.

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora


×

Aviso Sobre Cookies

Ao usar este site você aceita a nossa Política de Privacidade