Wie vermeide ich UNLINK-Sicherheitsrisiken in PHP?

Ich benutze UNLINK mitPHP undAJAX. Ich weiß, dass dies sehr gefährlich ist, da jeder beliebige Dateien löschen kann. Aber ich muss @ verwendAJAX weil ich die Seite nicht neu laden kann, wenn ich die Dateien lösche.

Wie kann ich also zulassen, dass die Datei nur für den Benutzer gelöscht wird, dem sie gehört?

Bitte lass mich auch andere Dinge wissen, wenn du denkst, dass ich hier etwas falsch mache oder etwas anderes, was du im Sinn hast und du denkst, dass es nützlich sein wird:)

Mein PHP-Code:

<?php

    $photo_id       = $_GET['photo_id'];
    $thumbnail_id   = $_GET['thumbnail_id'];    

    function deletePhotos($id){
        return unlink($id);
    }

    if(isset($photo_id)){
        deletePhotos($photo_id);
    }
    if(isset($thumbnail_id)){
        deletePhotos($thumbnail_id);
    }


 ?>

Mein AJAX-Code:

function deletePhoto(photo, thumbnail){

        var photos = encodeURIComponent(photo);
        var thumbnails = encodeURIComponent(thumbnail);

        if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari
          xmlhttp=new XMLHttpRequest();
        } else {// code for IE6, IE5
          xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
        }

        xmlhttp.onreadystatechange=function() {
            if (xmlhttp.readyState==4 && xmlhttp.status==200) {
                document.getElementById("media").innerHTML=xmlhttp.responseText;
            }
        }
        xmlhttp.open("GET", "http://192.168.2.104/images/users/delete_photo.php?photo_id="+photos+"&thumbnail_id="+thumbnails, true);
        xmlhttp.send();
    }

Antworten auf die Frage(14)

Ihre Antwort auf die Frage