Frage

Ich habe Probleme, eine Datei von einem höheren Verzeichnis zu löschen, fand ich diesen Beitrag und versuchte, es aber kein Glück ....:

gotdalife bei gmail dot com 25-Sep-2008 2.04

Für jeden, der ein Problem mit der gehabt hat Berechtigungsfehler verweigert, es ist manchmal verursacht, wenn Sie versuchen, Löschen einer Datei, die in einem Ordner ist in der Hierarchie höher zu Ihrem Arbeitsverzeichnis (das heißt, wenn sie versuchen zu löscht einen Pfad, der beginnt mit“../").

So, dieses Problem zu umgehen, können Sie kann chdir () verwenden, um die Funktion zu ändern Verzeichnis in den Ordner, in dem die Datei Sie wollen unlink befindet.

<?php
>     $old = getcwd(); // Save the current directory
>     chdir($path_to_file);
>     unlink($filename);
>     chdir($old); // Restore the old working directory     ?>

Hier ist der Code, dass ich derzeit haben:

session_start();

if (!isset($_SESSION['agent']) OR ($_SESSION['agent'] !=md5($_SERVER['HTTP_USER_AGENT']))){

    require_once ('includes/login_functions.inc.php');
    $url = absolute_url();
    header("Location: $url");
    exit();
}  



$folder = $_GET['folder'];
$filename = $_GET['name'];
$path = "../gallery/photos/$folder";

if (isset($_POST['submitted'])) {

    if ($_POST['sure'] == 'Yes') {  

        $old = getcwd(); // Save the current directory
        chdir($path);
        unlink($filename);
        chdir($old); // Restore the old working directory  

    }
    else{

        echo '<p>The photo has NOT been deleted.</p>';
    }
}

Ich erhalte die Fehlermeldung:

Achtung: unlink () [function.unlink]: Kein Fehler in J: \ xampp \ htdocs \ Bunker \ admin \ delete_file.php on line 37

Zeile 37 sein:

unlink($filename);

Kann jemand sehen, was ich falsch gemacht habe?

War es hilfreich?

Lösung

Ich benutze immer absolute Filepath Namen.

Ich würde die filedir als Konstante in der Config definiert, dann verketten, so dass Sie einen absoluten Dateipfad haben, dann einen Anruf zu unlink machen ().

Btw:. Ich hoffe, Sie wissen, dass Ihr Code ist hoch unsicher

Andere Tipps

Siehe hier:

http://bugs.php.net/bug.php?id=43511

und hier

http://php.bigresource.com/Track-php-03TimDKO/

http://www.phpbuilder.com/board/showthread.php? t = 10357994

Obwohl ich würde nicht diese empfehle,, gemäß den obigen Ausführungen. Gibt es die Möglichkeit, einen anderen Ansatz?

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top