Ir para conteúdo

POWERED BY:

Arquivado

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

Danilo Nicoletti

[Resolvido] Deletar Arquivos com Checkbox

Recommended Posts

Opaaaa... o Codigo ta diminuindo e ta dando certo ;)

 

já sei que eu pego a variavel dessa linha

 

<input type="checkbox" name="deletar[]" value="<?php echo $row_bercario['id'] ?>

 

Agora precisa pegar mais que 1 valor

Ele ta pegando o id por isso imprime aquela mensagem

 

pra conseguir usar o unlink corretamente eu preciso pegar a classe e nome arquivo que seria

 

 

<?php echo $row_bercario['classe'] ?>

e

<?php echo $row_bercario['fotos'] ?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Opaaaa... o Codigo ta diminuindo e ta dando certo

 

Que bom. http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

 

Agora precisa pegar mais que 1 valor

Ele ta pegando o id por isso imprime aquela mensagem

 

Como está o seu formulário? Tem que modificar lá, para funcionar legal.

 

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Esse é o Codigo pra exclusão

 

<?php $cn = mysql_connect('localhost','root','12345678');
mysql_select_db('login', $cn); ?>

<?php
if (!isset($_POST)) {
session_start();  
}

unlink  ('pequenas/'.$_POST['classe'].'/'.$_POST['foto'].'');
if(isset($_POST['deletar']) && is_array($_POST['deletar'])) {
   foreach($_POST['deletar'] as $id) {
       mysql_query("delete from foto_calendario where id = ".(int)$id) or die(mysql_error());
   }
}
?>

 

E Esse é o Form

 

<form name="remover" action="exclusao2.php" method="post">
<table width="70%" border="0" align="center" cellpadding="0" cellspacing="0">

   <tr bgcolor="#999999" class="style11">
     <td height="34" colspan="4" bgcolor="#FFFFFF" ><div align="center"><img src="images/bercario.gif" width="639" height="27" /></div></td>
   </tr>
 <tr bgcolor="#999999" class="style11">
   <td width="6%" height="26" > <div align="center">Dia</div></td>
     <td width="43%" ><div align="center">Turma</div></td>
     <td width="44%" ><div align="center">Nome da Foto</div></td>
     <td width="7%" > </td>
   </tr>
   <?php do { ?>

     <tr bgcolor="<?php echo ($ac_sw1++%2==0)?"#DBDBDB":"#FFFFFF"; ?>" onmouseout="this.style.backgroundColor=''" onmouseover="this.style.backgroundColor=''" class="style11">
       <td height="27" ><div align="center"><?php echo $row_bercario['dia_mes']; ?> - <?php echo $row_bercario['dia_semana']; ?></div></td>
       <td><div align="center"><?php echo $row_bercario['classe']; ?></div></td>
       <td width="44%" ><div align="center"><?php echo $row_bercario['foto']; ?></div></td>
       <td><div align="center"><input type="checkbox" name="deletar[]" value="<?php echo $row_bercario['id'] ?>" /></div></td>
     </tr>
     <?php } while ($row_bercario = mysql_fetch_assoc($bercario)); ?>
             <tr class="style11">
         <td height="15" > </td>
         <td> </td>
         <td > </td>
         <td> </td>
       </tr>
               <tr>
     <td height="37" colspan="5" align="center"><input type="submit" name="acao" value="Remover" /> </td>
   </tr>
</table>
 <br />
 <br />
 </form>

 

Carlos Precisa tbm de um codigo pra redimenciona

Tipo .... quando ele faz a exclusão fica uma tela branca ... ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, solução gambiarra...

 

value="<?php echo $row_bercario['id'].'|'.$row_bercario['classe'].'|'.$row_bercario['foto'] ?>"

Daí na página que recebe os dados você dá um explode pelo | e pega separados os dados.

 

http://br.php.net/explode

 

Carlos Precisa tbm de um codigo pra redimenciona

Tipo .... quando ele faz a exclusão fica uma tela branca ..

 

Redimensionar... você quis dizer redirecionar?

header('Location: pagina_a_redirecionar.php');

 

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Carlos ele puxo as imformações beleza

 

fico assim

 

Array
(
   [deletar] => Array
       (
           [0] => 364|Bercario|Ficha.png
           [1] => 363|Bercario|cartao.jpg
       )

   [acao] => Remover
)

 

nao entendi direito é esse explode

 

a pagina de exclusao fico assim

 

<?php ini_set('display_errors', 1); error_reporting(E_ALL);?>
<?php $cn = mysql_connect('localhost','root','12345678');
mysql_select_db('login', $cn); ?>

<?php
if (!isset($_POST)) {
session_start();  
}
$post = "id|classe|foto" ;
$ex = explode("|", $post);
unlink  ('pequenas/'.$ex[1].'/'.$ex[2].'');
if(isset($_POST['deletar']) && is_array($_POST['deletar'])) {
   foreach($_POST['deletar'] as $id) {
       mysql_query("delete from foto_calendario where id = ".(int)$id) or die(mysql_error());
   }
}
header('Location: cad_fotos.php');
?>

 

mas ele paga essa informções

 

$post = "id|classe|foto" ;

Warning: unlink(pequenas/classe/foto):

 

não a que eu quero

 

e axo que ta dando erro no header tbm

 

Warning: Cannot modify header information - headers already sent by (output started at C:\apache2triad\htdocs\horizonte\exclusao2.php:5) in C:\apache2triad\htdocs\horizonte\exclusao2.php on line 17

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tem que mudar o resto do código....

 

$ex = explode('|',$id);// coloca isto dentro do foreach
print_r($ex);// deve imprimir $ex[0] o id, $ex[1] a classe e o $ex[2] a foto

Daí você usa estas partes dentro do INSERT. Sobre o header, não pode ter nenhuma saída de cabeçalho antes dele.

 

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

<?php $cn = mysql_connect('localhost','root','12345678');
mysql_select_db('login', $cn); ?>

<?php
if (!isset($_POST)) {
session_start();  
}
$post = "id|classe|foto" ; //isso eu tiro ??
$ex = explode("|", $post);//isso eu tiro ??
unlink  ('pequenas/'.$ex[1].'/'.$ex[2].'');
if(isset($_POST['deletar']) && is_array($_POST['deletar'])) {
   foreach($_POST['deletar'] as $id) { // <<<<---- coloco o que voce me pediu aki
       mysql_query("delete from foto_calendario where id = ".(int)$id) or die(mysql_error());
   }
}
?>
<?
header('Location: cad_fotos.php');    // << - o header é assim 
?>

 

Não Entendi Direito carlos

Compartilhar este post


Link para o post
Compartilhar em outros sites

$post = "id|classe|foto" ; //isso eu tiro ?? SIM
$ex = explode("|", $post);//isso eu tiro ?? SIM
unlink  ('pequenas/'.$ex[1].'/'.$ex[2].'');
if(isset($_POST['deletar']) && is_array($_POST['deletar'])) {
    foreach($_POST['deletar'] as $id) { 
        // <<<<---- coloco o que voce me pediu aki - AQUI
        mysql_query("delete from foto_calendario where id = ".(int)$id) or die(mysql_error());
    }
}
?>
<?
header('Location: cad_fotos.php');    // << - o header é assim - aqui está correto, mas se tiver alguma saída para o navegador, tipo echo, ou cabecalho html antes, vai dar pau

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Aeeeeee Carlos.... vlw pela paciencia comigo cara

 

sou iniciante nisso... mas voce me ajuda demais

sei nem como agradeçer

 

 

só o header que ainda da pau...

 

Warning: Cannot modify header information - headers already sent by (output started at C:\apache2triad\htdocs\horizonte\exclusao2.php:5) in C:\apache2triad\htdocs\horizonte\exclusao2.php on line 19

 

mas o codigo ficou assim

 

 <?php $cn = mysql_connect('localhost','root','12345678');
mysql_select_db('login', $cn); ?>

<?php
if (!isset($_POST)) {
session_start();  
}


if(isset($_POST['deletar']) && is_array($_POST['deletar'])) {
   foreach($_POST['deletar'] as $id) { 
$ex = explode('|',$id);
   unlink  ('pequenas/'.$ex[1].'/'.$ex[2].'');
       mysql_query("delete from foto_calendario where id = ".(int)$id) or die(mysql_error());
   }
}

header("Location: cad_fotos.php");
?>

para quem quiser pegar e tiver duvidas !!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

<?php $cn = mysql_connect('localhost','root','12345678');
mysql_select_db('login', $cn); 
if(isset($_POST['deletar']) && is_array($_POST['deletar'])) {
   foreach($_POST['deletar'] as $id) { 
$ex = explode('|',$id);
   unlink  ('pequenas/'.$ex[1].'/'.$ex[2].'');
       mysql_query("delete from foto_calendario where id = ".(int)$id) or die(mysql_error());
   }
}
header("Location: cad_fotos.php");
?>

 

Funciono assim..... o que fiz de diferente foi abrir uma tag soh de do PHP <?php ?>

 

Seria Isso ???

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.