Jump to content


Photo

Listando E Excluindo Com Checkbox


  • Faça o login para participar
5 replies to this topic

#1 ThiAgo Leão

ThiAgo Leão

    Normal

  • Usuários
  • 64 posts
  • Sexo:Masculino
  • Interesses:PHP, MYSQ, Flash, Css, XHTML, Photoshop, Corel Draw

Posted 12/06/2008, 14:05

Bom gente ou novo no PHP, se eu falar qualquer besteira aki relevem por favor!
Bem listei as imagens do banco e inseri checkbox, gostaria de excluir, apenas os selecionados no checkbox, como faço??

E uma outra dúvida o Index é aonde faz o upload das imagens, fiz um iframe para xamar listar.php, botei um form no iframe isto vai interferir em algo? o iframe xama o [listar.php], onde seleciona as fotos e tem o checkbox.

Por favor, quem puder ajudar, eu agradeço!

INDEX ONDE TEM IFRAME
[codebox]<form action="excluir.php" method="post">
<table width="100%" height="381" cellpadding="0" cellspacing="0">
<tr>
<td height="360" align="center" valign="top" scope="col"><iframe src="listar.php" frameborder="1" height="100%" width="90%" scrolling="Yes" name="lista" id="lista">
</iframe></td>
</tr>
<tr>
<td height="19" align="center" valign="top" scope="col"><table width="780" cellspacing="0" cellpadding="0">
<tr>
<td width="41" height="19" scope="col">&nbsp;</td>
<td width="317" valign="top" scope="col">&nbsp;</td>
<td width="380" align="left" valign="top" scope="col"><label>
<input name="alterar" type="submit" class="botao" id="alterar" value="Alterar" />
<input name="enviar" type="submit" class="botao" id="enviar" value="Excluir" />
</label></td>
<td width="40" scope="col">&nbsp;</td>
</tr>
</table></td>
</tr>
</table>
</form>[/codebox]


LISTAR.PHP

[codebox]<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR...nsitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>:: Leão - Criação e Desenvolvimento :: ADMINSTRAÇÃO</title>
<style type="text/css">
<!--
body {
margin-left: 0px;
margin-top: 8px;
margin-right: 0px;
margin-bottom: 0px;
background-color: #FFFFFF;
}
@import url("../css/estilos.css");
-->
</style>

<link href="../../css/estilos.css" rel="stylesheet" type="text/css" />
</head>

<body>
<table width="100%" border="0" cellpadding="0" cellspacing="0" bordercolor="#CCCCCC">
<tr>
<td align="left" valign="top" scope="col"><?php
mysql_connect("localhost", "root", "") or die(pegaErro());
mysql_select_db("leaodesign") or die(pegaErro());

$SQL = "SELECT foto FROM clientes ORDER BY id_foto";
$res = mysql_query($SQL);

//quantas linhas
$j = 0;

while(list($foto) = mysql_fetch_row($res)){


if( ( $j % 3 == 0 ) and ( $j <= $foto ) ) {


echo "<td><img src=\"../arquivos/$foto\n\"></td>";
echo "<th><input type=\"checkbox\" name=\"checkar\n\"></th>";
}

else if ( ( ($j % 3) != 0 ) and ( $j <= $foto )){
echo "<td><img src=\"../arquivos/$foto\n\"></td>";
echo "<tr><td>
<input type=\"checkbox\" name=\"checkar\n\">
</td></tr>";
$j ++;
}

}


?> <label></label></td>
</tr>
</table>
</body>
</html>[/codebox]

#2 fly2k

fly2k

    Super Veterano

  • Usuários
  • 2262 posts
  • Sexo:Não informado

Posted 12/06/2008, 14:50

Se você utilizar o nome do input como array:

<input type="checkbox" name="variavel[]" value="1" />
<input type="checkbox" name="variavel[]" value="2" />
<input type="checkbox" name="variavel[]" value="3" />

Depois no PHP basta percorrer esse array com o foreach.
Quer aprender PHP? -> www.manjaphp.com.br
Tutoriais, código colaborativo (pastebin), curso de PHP, artigos e etc.

#3 ThiAgo Leão

ThiAgo Leão

    Normal

  • Usuários
  • 64 posts
  • Sexo:Masculino
  • Interesses:PHP, MYSQ, Flash, Css, XHTML, Photoshop, Corel Draw

Posted 12/06/2008, 14:55

Mas kra to listando foto e check!

nao to montando! como vo por em array?

#4 lwirkk

lwirkk

    Veterano

  • Usuários
  • 1314 posts
  • Sexo:Não informado

Posted 12/06/2008, 21:05

Thiago, ele quis dizer isso:
Na parte do LISTAR.PHP onde têm duas linhas idênticas a essa:
echo "<th><input type=\"checkbox\" name=\"checkar\n\"></th>";

Mude para:
echo "<th><input type=\"checkbox\" name=\"checkar[]\"></th>";
E acho assim menos complicado... com aspas simples no início e fim ao invés de aspas duplas, para evitar as barras invertidas...
echo '<th><input type="checkbox" name="checkar[]"></th>';

Note que no "name" foi adicionado [], assim ele estará criando automaticamente um array para cada checkbox.
E depois poderá fazer um LOOP para verificar qual chave do array está setada usando o isset()

E o FORM precisa estar na LISTAR.PHP para que funcione... IFRAME é algo separado, se fosse include daria, mas IFRAME e FRAME do modo que está o código, ele não irá funcionar.... (y)

Edição feita por: lwirkk, 12/06/2008, 21:07.

Posted Image
"Se quiser ser feliz por um dia, vingue-se; se quiser ser feliz por uma vida inteira, perdoe."

Muito Obrigado à todos do fórum, e à toda equipe do fórum! =)

#5 ThiAgo Leão

ThiAgo Leão

    Normal

  • Usuários
  • 64 posts
  • Sexo:Masculino
  • Interesses:PHP, MYSQ, Flash, Css, XHTML, Photoshop, Corel Draw

Posted 13/06/2008, 16:07

Obrigado, funcionou!

Mas to com o seguinte problema, só consigo remover o ID, queria remover o arkivo tbm!

Sei que tem que usar a função UNLINK!

mas nao to conseguindo!
pode me dar uma força?
obrigado!

#6 lwirkk

lwirkk

    Veterano

  • Usuários
  • 1314 posts
  • Sexo:Não informado

Posted 13/06/2008, 17:01

Na hora de remover os dados do DB, você da um DELETE com um WHERE para deletar aquele registro em específico, certo?
Faça um SELECT antes do DELETE pegando um dado de $foto com o WHERE do mesmo ID que você usará para o delete, e depois de pegar o valor de $foto no registro que irá deletar, você faz o delete do mysql normalmente e depois poderá fazer o delete do arquivo +- assim:
unlink("../arquivos/$foto");

Não sei se expliquei bem, mas tentei huahuahua. (y)

Edição feita por: lwirkk, 13/06/2008, 17:02.

Posted Image
"Se quiser ser feliz por um dia, vingue-se; se quiser ser feliz por uma vida inteira, perdoe."

Muito Obrigado à todos do fórum, e à toda equipe do fórum! =)




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq