Avatar billede qub- Novice
02. november 2004 - 08:46 Der er 12 kommentarer og
1 løsning

Hjælp til slette billeder - oprette/slette mapper

Hei!

Jeg har fået lavet mig "dele" af et galleri script, men nu mangler jeg at gøre så man selvfølgelig også kan slette billeder igen..

Min upload billede ser således ud:

// Upload Pictures Profiles

    if($_POST['pictures_sponsors_upload']) {

//Her skal filen flyttes fra
$from    = $_FILES['file']['tmp_name'];

//Hvilken type fil arbejder vi med?
$ext    = strtolower(end(explode(".", $_FILES['file']['name'])));

//Hvis filen er et jpg, jpeg eller gif billede
if($ext == "jpg" || $ext == "jpeg" || $ext == "gif")
{
$date = time();

//Her giver vi billedet et andet navn, så der ikke kommer to ens navne…
$newname = $date . "_" . rand() . "." . $ext;


//Her er vores destination
$to = "../improved/images/pictures/sponsors/" . $newname;

//Her sker det magiske:
move_uploaded_file($from, $to);

//Her ligges oplysningerne ind databasen – huske at connecte til den!
$query    = "INSERT INTO improved_pictures (picture, destination, date, name) VALUES ('$newname', '$destination', '$date', '$_POST[named]')";
mysql_query($query);
}

        echo "<script type=\"text/javascript\">";
        echo "document.location='admin/pictures_sponsors.php'";
        echo "</script>";

    }







Samtiddig kunne jeg også godt tænkte mig at vide hvordan man evt. kunne lave, så man kan oprette, og slette mapper - til billeder..




Håber der er nogen der kan hjælp med en, eller begge af overnstående :)
Avatar billede schaefner Juniormester
02. november 2004 - 08:50 #2
Du kan først og fremmest kigge på funktionerne mkdir() og unlink()
Avatar billede hmortensen Nybegynder
02. november 2004 - 08:53 #3
Og måske chmod() så du har rettighed til at oprette/slette
Avatar billede qub- Novice
02. november 2004 - 09:02 #4
erhm yesh.. Er det sådan så jeg muligvis kan få en af jer til at give et par ekspempler på ovenstående :/
Avatar billede schaefner Juniormester
02. november 2004 - 09:17 #5
Et hurtig sammensmækket eksempel. Utestet et cetera.

<?php
/*
Eksempel på kald:
/?f=delfile&path=/path/to/file/backstreetboys.jpg
*/

if (isset($_GET['f'], $_GET['path'])) {
    if ($_GET['f'] == "delfile") {
        if (unlink($_GET['path'])) {
            print "Filen '".$_GET['path']."' blev slettet";
        } else {
            print "Filen '".$_GET['path']."' kunne ikke slettes";
        }
    }
    if ($_GET['f'] == "deldir") {
        if (rmdir($_GET['path'])) {
            print "Mappen '".$_GET['path']."' blev slettet";
        } else {
            print "Mappen '".$_GET['path']."' kunne ikke slettes";
        }
    }
} else {
  print "Handling og fil/mappe skal være valgt!";
}
?>
Avatar billede qub- Novice
02. november 2004 - 09:41 #6
Det vil ikke rigtig fungere for mig :/


Det er selvfølgelig ikke noget problem at få slettet fra databasen, men at få billedet slettet volder nogen probs.. Der sker ik rigtig noget!
Avatar billede schaefner Juniormester
02. november 2004 - 09:49 #7
Udskriver den ikke noget?
Avatar billede qub- Novice
02. november 2004 - 09:52 #8
Okai vi tar den forfra...

Der hvor den udskriver billederne (i admindelen), er der et link der ser således ud:
<a href="admin.php?p=d&picture_profile_delete=<? echo $id ?>">Delete</a>


Det linker så din min =d side som bla. sletter billederne i databasen således:

    $picture_profile_delete = $_GET[picture_profile_delete];
    if(isset($picture_profile_delete)) {
            mysql_query("DELETE FROM improved_pictures WHERE id='$_GET[picture_profile_delete]'");
           
                echo "<script type=\"text/javascript\">";
                echo "document.location='admin/pictures_profiles.php'";
                echo "</script>";
           
}


Simpelt nok..


Men kan ikke lige få implanteret unlink nogen steder, så det funker ihvertfald.. :/
Avatar billede schaefner Juniormester
02. november 2004 - 10:11 #9
Så skal du jo som det første sende filnavnet på billede med:

<a href="admin.php?f=delimg&img=<?php echo $img ?>&id=<?php echo $id ?>">Delete image</a>

<?php
if (isset($_GET['f'])) {
    if ($_GET['f'] == "delimg") {
        if (isset($_GET['id'], $_GET['img'])) {
            unlink("/path/to/images/".$_GET['img']);
            mysql_query("DELETE FROM improved_pictures WHERE id=".$_GET['id']."") or die(mysql_error());
        }
    }
}
?>
Avatar billede schaefner Juniormester
02. november 2004 - 20:54 #10
Lidt respons ville bestemt ikke skade nogen.
Avatar billede schaefner Juniormester
03. november 2004 - 15:57 #11
Det ville faktisk slet ikke skade noget eller nogen.
Avatar billede qub- Novice
04. november 2004 - 17:10 #12
hei jow, sorry!

Har ikke lige haft så meget tid.. Men jeg tror skam det funker - det med at slette billedet.. :P

Mange tak!
Avatar billede schaefner Juniormester
05. november 2004 - 11:43 #13
Så må det vel betragtes som et svar
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