Pregunta

Estoy teniendo problemas al eliminar un archivo de un directorio de más alto, me encontré con este post y probado, pero sin suerte ....:

gotdalife en gmail punto com 25-Sep-2008 02:04

Para cualquiera que haya tenido un problema con el permisos negados error, es a veces causado cuando intenta eliminar un archivo que está en una carpeta más alto en la jerarquía a su directorio de trabajo (es decir, cuando se trata de eliminar una ruta que comienza con" ../").

Así que para evitar este problema, puede utilizar chdir () para cambiar el trabajo directorio a la carpeta donde el archivo que desea desvincular se encuentra.

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

Aquí está el código que tengo actualmente:

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>';
    }
}

Estoy recibiendo el mensaje de error:

Advertencia: unlink () [function.unlink]: No hay error en J: \ xampp \ htdocs \ bunker \ admin \ delete_file.php en la línea 37

línea 37 siendo:

unlink($filename);

¿Alguien puede ver lo que he hecho mal?

¿Fue útil?

Solución

Siempre utilizo nombres ruta absoluta.

Me definiría la filedir como una constante en su configuración, a continuación, concatenar que pueda tener una ruta absoluta, a continuación, realizar una llamada a unlink ().

Por cierto:. Espero que conoce su código es muy insegura

Otros consejos

Vea aquí:

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

y aquí

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

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

A pesar de que no recomendaría hacer esto, de acuerdo con los comentarios anteriores. ¿Existe la opción de adoptar un enfoque diferente?

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top