Ir para conteúdo

Arquivado

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

osprimosbh

Excluir fotos do bd

Recommended Posts

Boa tarde amigo do imasters, sou novo no forum e calouro em PHP, estou com um pequeno problema em sisteminha de fotos que estou tentando utilizar. Bem o sistema funciona perfeitamente porem necessito de um link para exclusão das fotos. Será que alguem poderia me ajudar??

segue a abaixo os codigos // Minha tabela do BD é galeria, nela contem os campos ID, IMAGEM, LEGENDA.

 

INDEX.PHP

<?php
include "conecta.php" ;
$sql_1 = mysql_query("SELECT * FROM galeria");
$trg = mysql_num_rows($sql_1);
?>
<tbody>
<tr>
<td align="center" bgcolor="#000000">
<p align="left"><font color="#FFFFFF" face="Arial" style="font-size: 9pt">
<img border="0" src="images/left_side_arrow.gif" width="4" height="7">  Existem <?php echo "$trg"; ?> 
fotos neste album 
</font> </td>
</tr>
<tr>
<td align="center">
<?php
$pag = $_GET['pagina'];
if(isset($pag)){
$pag = $pag;
}else{
$pag = 1;
}
$quantidade = 12;
$inicio = ($pag*$quantidade) - $quantidade;
echo("<div class='imgalign'>");
$sql_2 = mysql_query("SELECT * FROM galeria ORDER BY id LIMIT $inicio, $quantidade");
@$num_img = mysql_num_rows($sql_2);
if ($num_img=='') {
echo("<img src='images/sem_foto.png'/><br /> !!Sem Fotos Ainda!! ");
}
else{
while ($array_galeria = mysql_fetch_array($sql_2)) {
echo"<div class='galeria-imagens'> ";
$id=$array_galeria[id];
$img=$array_galeria[imagem];
$lg=$array_galeria[legenda];
$legenda = ucfirst($lg);
echo "<a  href='/galeria/fotos/".$img."' rel='lightbox[roadtrip]'title='$legenda'>
<img class='lk' style='position:relative;left:2px;' src='/galeria/fotos/".$img."' width='90'height='70' alt='$legenda' title='$legenda'/></a><br>";
echo"</div>";
echo"</div>";
}
}
echo("</div>");
?>
</td>
</tr>
<tr>
<td align="center">
<?php
$sql_3 = mysql_query("SELECT * FROM galeria");
$total_registros = mysql_num_rows($sql_3);
$paginas = ceil($total_registros/$quantidade);
$links = 1;
echo "<br />";        echo "<br />";
echo "<a href='?pagina=1'>primeira pagina </a>";
for($i = $pag-$links; $i <= $pag-1; $i++){
if($i<=0){
}else{
echo "<a href='?pagina=".$i."'>".$i."</a>";
}
}
echo "<a href=#>$pag</a>";
for($i = $pag+1; $i <= $pag+$links; $i++){
if($i>$paginas){
}else{
echo "<a href='?pagina=".$i."'>".$i."</a>";
}
}
echo "&<a href='?pagina=".$paginas."'>ultima pagina </a>";

DELETAR.PHP

<?php
include("conectar.php");

$sel = mysql_query("SELECT * FROM galeria WHERE id=".$_GET['id']."") or die(mysql_error());

if(mysql_num_rows($sel) != 0){

$pega = mysql_fetch_array($sel);
$img = $pega['imagem'];
unlink($img);

$query = mysql_query("DELETE FROM galeria WHERE id=".$_GET['id']."");

header("location:retorno-deletar.htm");

}
else
{
print("Não foi possivel excluir a imagem!\n");
}
?>
?>

Fiz ate aí e nao sei se esta correto.. alguem poderia me ajudar..????

Compartilhar este post


Link para o post
Compartilhar em outros sites

Está aparecendo erro? O que está acontecendo?

Pelo que vi , está tudo certo. Só falta remover o arquivo do servidor, o que pode ser feito com a função unlink():

 

http://www.php.net/unlink

 

 

Pois então... o meu problema é que não sei onde devo colocar a fucção unlink.. Deixe-me explicar melhor... O sistema funfa belezinha... dei uma pesquisada na net e encontrei esse codigo para deletar a imagem, porem não sei como juntar isso ao meu sistema.. gostaria que abaixo da imagem ficasse uma botao para excluir.. como ficaria esse funçao unlink no meu codigo... poderia me ajudar...???

Compartilhar este post


Link para o post
Compartilhar em outros sites

Desculpe minha ignorância em php amigo.. mais esse é justamente meu problema, nao sei como dar proseguimento ao meu sistema... gostaria que na index.php onde aparecem as imagens logo abaixo de cada uma apareça um link deletar.. , ou seja, a cada foto que eu postar seu link respectivo de delete apareça embaixo da foto... e eu nao sei como fazer isso

vou continuar tentando aqui... e espero que juntos possamos chegar ao resultado que tanto necessito

vlw

aguardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

segundo o seu SELECT, só há uma imagem. Não entendi onde entram as outras imagens que você está citando.

 

Descreva melhor o sistema, estrutura de tabelas, arquivos etc. Diga como ele está, como deve ficar e em qual parte está sua dificuldade.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não esquece de colocar

(int)$_GET['id']
para não ficar vulnerável à SQL Injection.

Compartilhar este post


Link para o post
Compartilhar em outros sites

comecemos do zero entao..

Baixei um sistema de fotos o mesmo contem os 3 arquivos index.php, up_img.php, conecta.php ( implementei mais dois arquivos no sistema enviar.php, login.php com o intuito de simular a autênticação de usuário para acesso à àrea admin (upload) / tem as pastas fotos, images, js. A galeria de fotos é com efeito lightbox e funciona perfeitamente, porem o sistema que baixei nao me da opção de excluir as fotos. Dei uma lida em alguns tutoriais e tentei implementar essa opção, só que sem seucesso. Minha intenção é criar uma nova pagina onde liste as fotos cadastradas com a opção de excluí-las ou entao fazer isso na propria index.php. Essa é a ajuda que gostaria de vocês. abaixo segue os arquivos

 

:: Tabela do BD

CREATE TABLE `galeria` (
 `id` int(11) NOT NULL auto_increment,
 `imagem` varchar(255) default NULL,
 `legenda` varchar(255) default NULL,
 PRIMARY KEY  (`id`)
)

:: index.php / pagina onde é exibida as fotos e onde gostaria que aparecesse a opção de excluir

<?php
include "conecta.php" ;
$sql_1 = mysql_query("SELECT * FROM galeria");
$trg = mysql_num_rows($sql_1);
?>
<tbody>
<tr>
<td align="center" bgcolor="#000000">
<p align="left"><font color="#FFFFFF" face="Arial" style="font-size: 9pt">
<img border="0" src="images/left_side_arrow.gif" width="4" height="7">  Existem <?php echo "$trg"; ?> 
fotos neste album 
</font> </td>
</tr>
<tr>
<td align="center">
<?php
$pag = $_GET['pagina'];
if(isset($pag)){
$pag = $pag;
}else{
$pag = 1;
}
$quantidade = 12;
$inicio = ($pag*$quantidade) - $quantidade;
echo("<div class='imgalign'>");
$sql_2 = mysql_query("SELECT * FROM galeria ORDER BY id LIMIT $inicio, $quantidade");
@$num_img = mysql_num_rows($sql_2);
if ($num_img=='') {
echo("<img src='images/sem_foto.png'/><br /> !!Sem Fotos Ainda!! ");
}
else{
while ($array_galeria = mysql_fetch_array($sql_2)) {
echo"<div class='galeria-imagens'> ";
$id=$array_galeria[id];
$img=$array_galeria[imagem];
$lg=$array_galeria[legenda];
$legenda = ucfirst($lg);
echo "<a  href='/galeria/fotos/".$img."' rel='lightbox[roadtrip]'title='$legenda'>
<img class='lk' style='position:relative;left:2px;' src='/galeria/fotos/".$img."' width='90'height='70' alt='$legenda' title='$legenda'/></a><br>";
echo"</div>";
echo"</div>";
}
}
echo("</div>");
?>
</td>
</tr>
<tr>
<td align="center">
<?php
$sql_3 = mysql_query("SELECT * FROM galeria");
$total_registros = mysql_num_rows($sql_3);
$paginas = ceil($total_registros/$quantidade);
$links = 1;
echo "<br />";        echo "<br />";
echo "<a href='?pagina=1'>primeira pagina </a>";
for($i = $pag-$links; $i <= $pag-1; $i++){
if($i<=0){
}else{
echo "<a href='?pagina=".$i."'>".$i."</a>";
}
}
echo "<a href=#>$pag</a>";
for($i = $pag+1; $i <= $pag+$links; $i++){
if($i>$paginas){
}else{
echo "<a href='?pagina=".$i."'>".$i."</a>";
}
}
echo "&<a href='?pagina=".$paginas."'>ultima pagina </a>";

 

:: up_img.php / Pagina que contem o form para upload da imagem

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Upload Foto</title>
<link rel="stylesheet" href="css/style.css" type="text/css" media="screen" />
</head>
<body bgcolor="#000000">
<h2 align="left"><font color="#FFFFFF"></font></h2>
<p align="center"><b><font face="Arial" size="4" color="#FFFFFF">GALERIA DE FOTOS</font></b></p>
<p align="left"><b><font face="Arial" size="2" color="#FFFFFF"></font></b><font color="#FFFFFF" face="Arial" style="font-size: 9pt"><img border="0" src="images/left_side_arrow.gif" width="4" height="7"> 
</font><b>
<font face="Arial" size="2" color="#FFFFFF">CADASTRAR  FOTOS</font></b></p>
<center>
<form name="up" action="" method="POST" enctype="multipart/form-data">
<font face="Arial" style="font-size: 9pt" color="#FFFFFF">Imagem:</font> 
<input type="file" name="arquivo" value="" size="56" /><font face="Arial" style="font-size: 9pt">
<font color="#FFFFFF"></font></font></center>
</form>
<div align="center">
<table border="0" width="97%" cellspacing="0" cellpadding="0" height="34">
	<tr>
		<td>
<p align="left"><b><font face="Arial" size="2" color="#FFFFFF"></font></b></p>
		</td>
	</tr>
		<p align="center"><?include 'index.php';?></td>

</table>
</div>
</body>
</html>

:: enviar.php

<?include 'login.php';?>
<?
//Se a Sessao Logado nao existir exibe o formulario de login 

if(!isset($_SESSION['logado']))
{
?>
<p align="center"><b><font face="Arial" size="2" color="#FFFFFF">Galeria de fotos</font></b></p>
<form name="login" method="post">
<p align="center"><font face="Arial" size="2" color="#FFFFFF">S<label>enha:</label></font>
<input type="password" name="senha"> <input type="submit" value="login">
</p>
</form>
<? 
exit; 
//  Se a sessao existir exibe o formulario de upload

}else{
?>
<p align="center">
<a target="_blank" href="index.php">Visitar Galeria</a> | <a href="login.php?logout=true">Logout</a> |
</p>
<!-- Incluindo o programa que faz o upload das imagens
<? include 'up_img.php'; ?> 
<p></p>
<? }?>


:: login.php 

<?
@session_start();
if(isset($_GET['logout']) && $_GET['logout'] == "true")
{
 unset($_SESSION['logado']);
 #@ session_destroy();
 header("Location: home.qe.htm");
}
$senha = "123";
if(isset($_POST['senha']) && $_POST['senha'] == "$senha")
{
 $_SESSION['logado'] = true;
}
?>

Estes sao os arquivos. Gostaria que me ajudassem a implementar a opção de excluir as fotos.. No mais desculpe pelo testamento rsrs

abraço

 

Por favor pessoal.. preciso muito da ajuda de vocês... meajudem a concluir esse sistema

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.