Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
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..????
>
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():
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...???
Você já tem a variável $img com o caminho para a imagem. Logo, basta inserir isto:
unlink( $img );
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
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.
Não esquece de colocar
(int)$_GET['id'] para não ficar vulnerável à SQL Injection.
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>}else{
?>
<p align="center">
<a target="_blank" href="index.php">Visitar Galeria</a> | <a href="login.php?logout=true">Logout</a> |
</p><? 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
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