Avatar billede kimox Nybegynder
01. november 2005 - 12:55 Der er 12 kommentarer og
1 løsning

Sletning af billede

Hej alle eksperter..


Jeg søger hjælp til at slette et billede afgangen i en mappen, Jeg tænkte på det skulle foregå på denne måde:

1. Den henter alle billeder i en mappe og poster dem på en side.
2. Den viser 2-3 billeder ved siden af hinanden ned af en række.
3. Under hvert billede er en knap der hedder "slet" så når man trykker på den, sletter man kun det billede.
4. Ved siden af knappen "Slet" må den gerne skrive navnet på billedet +.jpg

Lige en ting til punkt 2. det er sådan her jeg mener:

1  2  3
4  5  6
7  8  9
10 11 12
13 14 15

osv osv :o).

Håber virkelig i vil hjælpe mig !
Avatar billede olebole Juniormester
01. november 2005 - 12:56 #1
<ole>

- og hvorlangt er du kommet indtil nu?

/mvh
</bole>
Avatar billede dmdisco Nybegynder
01. november 2005 - 13:06 #2
<table width="100%" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td colspan="4">&nbsp;</td>
  </tr>
  <tr>
    <td class="over">&nbsp;</td>
    <td class="over">Filnavn</td>
    <td align="right" class="over">St&oslash;rrelse</td>
    <td align="right" class="over">Dimensioner</td>
  </tr>
<?php
if ($slet) {
    unlink("$dir/$slet");
    echo "<tr><td colspan='4'  style=\"border-bottom-width: 1px;border-bottom-style: solid;\">Billedet er slettet<br><br><a href=billede.php?s=3&dir=$dir>Tilbage</a></td></tr>";
    exit;
}
$imagedir = "../images";
    if ($dh = opendir($imagedir)) {
        while ($file = readdir($dh)) {
            if ($file == "." || $file == ".." || is_dir($file)) continue;
            if (eregi("(jpg|png|bmp|gif)", $file)) {
                $size = getimagesize("$imagedir/$file");
                $str = number_format((filesize("$imagedir/$file") / 1024), 2);
?>
  <tr>
    <td style="border-bottom-width: 1px;border-bottom-style: solid;"><a href="?slet=<?php echo "$imagedir/$file";?>&dir=<?php echo $imagedir;?>">Slet</a></td>
    <td style="border-bottom-width: 1px;border-bottom-style: solid;"><a href="<?php echo "$imagedir/$file";?>" target="_blank" class="menu"><?php echo $file;?></a>&nbsp;</td>
    <td align="right" style="border-bottom-width: 1px;border-bottom-style: solid;"><?php echo $str;?> Kb.&nbsp;</td>
    <td align="right" style="border-bottom-width: 1px;border-bottom-style: solid;"><?php echo $size[0];?> x <?php echo $size[1];?> px.&nbsp;</td>
  </tr>
<?php
            }
        }
    }
?>
</table>
Avatar billede kimox Nybegynder
01. november 2005 - 13:42 #3
Det ser meget smart ud!..
men den sletter ikke billede osv.

jeg har også ændret på det nok derfor..

<?php
if ($slet) {
    unlink("$dir/$slet");
    echo "<tr><td colspan='4'  style=\"border-bottom-width: 1px;border-bottom-style: solid;\">Billedet er slettet<br><br><a href=billede.php?s=3&dir=$dir>Tilbage</a></td></tr>";
    exit;
}
require "db.php"; 
$id = $_GET['id'];
$query = mysql_query ("SELECT * FROM mini_galleri WHERE id='$id'") or die(mysql_error());
while ($row = mysql_fetch_array($query)) {
$sti = $row['sti'];
$sti_start = $_SERVER["DOCUMENT_ROOT"];
$sti = str_replace("..", "", $sti);
$sti_hel = $sti_start ."/mappe". $sti;
$imagedir = "$sti_hel";
}
    if ($dh = opendir($imagedir)) {
        while ($file = readdir($dh)) {
            if ($file == "." || $file == ".." || is_dir($file)) continue;
            if (eregi("(jpg|png|bmp|gif)", $file)) {
                $size = getimagesize("$imagedir/$file");
                $str = number_format((filesize("$imagedir/$file") / 1024), 2);
?>
<?php
?>
  <tr>
    <td style="border-bottom-width: 1px;border-bottom-style: solid;"><a href="?slet=<?php echo "$imagedir/$file";?>&dir=<?php echo $imagedir;?>">Slet</a></td>
    <td style="border-bottom-width: 1px;border-bottom-style: solid;"><a href="<?php echo "$imagedir/$file";?>" target="_blank" class="menu"><?php echo $file;?></a>&nbsp;</td>
    <td align="right" style="border-bottom-width: 1px;border-bottom-style: solid;"><?php echo $str;?> Kb.&nbsp;</td>
    <td align="right" style="border-bottom-width: 1px;border-bottom-style: solid;"><?php echo $size[0];?> x <?php echo $size[1];?> px.&nbsp;</td>
  </tr>
<?php
            }
        }
    }
?>


det ser sådan ud nu.. dvs den får en forkert sti, hvordan skal dette ændres så det virker?
Avatar billede dmdisco Nybegynder
01. november 2005 - 13:54 #4
prøv unlink($slet) istedet kan ikke lige se hvorfor den skal have $dir med
Avatar billede kimox Nybegynder
01. november 2005 - 13:58 #5
Nej virker ikke, det er linksne den er gal med.. du kan se dette link hvor der står "slet"  "http://site.dk/mappe/adm/slet_gal_enkelt.php?slet=/home/virtual/site.dk/public_html/mappe/pics/galleri/tester/4.jpg&dir=/home/virtual/site.dk/public_html/mappe/pics/galleri/tester"


det er jo ik helt korrekt hehe
Avatar billede dmdisco Nybegynder
01. november 2005 - 14:03 #6
$imagedir skal være relativ og ikke document root
Avatar billede dmdisco Nybegynder
01. november 2005 - 14:06 #7
kommer an på hvad du har i row[sti] men noget i den her stil måske
$imagedir = "/mappe".str_replace("..", "", $row['sti']);
Avatar billede kimox Nybegynder
01. november 2005 - 14:45 #8
hvorfor virker det nu ikke når jeg bruger:

<?php
if ($slet) {
    unlink("$slet");
  $id = $_GET['id'];
header("Location: slet_gal_enkelt.php?id=$id");
    exit;
}
require "db.php"; 
$id = $_GET['id'];
$query = mysql_query ("SELECT * FROM galleri WHERE id='$id'");
while ($row = mysql_fetch_array($query)) {
$sti = $row['sti'];
$mappe = "/mappe";
$sti_hel = $sti;
$imagedir = "$sti_hel";
}
    if ($dh = opendir($imagedir)) {
        while ($file = readdir($dh)) {
            if ($file == "." || $file == ".." || is_dir($file)) continue;
            if (eregi("(jpg|png|bmp|gif)", $file)) {
                $size = getimagesize("$imagedir/$file");
                $str = number_format((filesize("$imagedir/$file") / 1024), 2);
?>
<?php
?>
  <tr>
    <td style="border-bottom-width: 1px;border-bottom-style: solid;"><a href="?id=<?php echo "$_GET[id]";?>?slet=<?php echo "$sti/$file&";?>">Slet</a></td>
    <td style="border-bottom-width: 1px;border-bottom-style: solid;"><a href="<?php echo "$sti/$file";?>" target="_blank" class="menu"><?php echo $file;?></a>&nbsp;</td>
    <td align="right" style="border-bottom-width: 1px;border-bottom-style: solid;"><?php echo $str;?> Kb.&nbsp;</td>
    <td align="right" style="border-bottom-width: 1px;border-bottom-style: solid;"><?php echo $size[0];?> x <?php echo $size[1];?> px.&nbsp;</td>
  </tr>
<?php
            }
        }
    }
?>

Det virker fint med at klikke på billedets navn og så se billedet popup.. men ikke hvis jeg laver det med id=$_GET[id]... så vil den ikke slette billedet !
Avatar billede dmdisco Nybegynder
01. november 2005 - 14:52 #9
<a href="?id=<?php echo "$_GET[id]";?>?slet=<?php echo "$sti/$file&";?>">Slet</a>
skal ændres til
<a href="?id=<?php echo "$_GET[id]";?>&slet=<?php echo "$sti/$file&";?>">Slet</a>
Avatar billede kimox Nybegynder
01. november 2005 - 14:55 #10
AAH griner.. jeg havde først lavet den sådan.. men havde glemt der så ikke skulle ? foran slet..
Avatar billede kimox Nybegynder
01. november 2005 - 14:56 #11
Perfekt det virker nu..

smider du et svar ?
Avatar billede dmdisco Nybegynder
01. november 2005 - 15:10 #12
svar
Avatar billede kimox Nybegynder
01. november 2005 - 15:13 #13
takker
-lukket-
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester