मैं PHP
और AJAX
के साथ यूएनLINK का उपयोग कर रहा हूं। मुझे पता है कि इस तरह से बहुत खतरनाक है, क्योंकि हर कोई किसी भी फाइल को हटा सकता है। लेकिन मुझे AJAX
का उपयोग करने की आवश्यकता है क्योंकि जब मैं फ़ाइलों को हटाता हूं तो मैं पृष्ठ को फिर से लोड नहीं कर सकता।PHP में UNLINK सुरक्षा जोखिमों से कैसे बचें?
तो मुझे केवल उस उपयोगकर्ता के लिए फ़ाइल को हटाने की अनुमति देने के लिए मुझे कैसे करना चाहिए?
कृपया मुझे अन्य बातों के भी पता है अगर आपको लगता है मैं यहाँ कुछ गलत या कुछ और कर रहा हूँ जाने क्या आपके मन में है और आपको लगता है कि यह उपयोगी होगा:)
मेरे PHP कोड:
<?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);
}
?>
मेरे AJAX कोड:
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();
}
AJAX लेना देना नहीं है सुरक्षा के साथ। सर्वर के दृष्टिकोण से, AJAX कॉल नियमित से अलग नहीं है। आपकी समस्या AJAX में नहीं बल्कि प्राधिकरण की कमी में है। जल्द ही आप इसे समझते हैं, जितनी जल्दी आप अपनी समस्या का समाधान करते हैं। –
हाय @ कोल। श्रापनेल, मुझे नहीं लगता कि आप पूरी तरह से सही हैं, क्योंकि 'AJAX' के बिना मुझे फ़ाइल बनाने की आवश्यकता नहीं है जो कोई भी एक्सेस कर सकता है और जीईटी अनुरोध के साथ कुछ भी हटा सकता है। अन्यथा मुझे पता है कि यहां समस्या प्राधिकरण के साथ है इसलिए मैंने इस सवाल से पूछा है, तो मुझे केवल उस उपयोगकर्ता के लिए फ़ाइल को हटाने की अनुमति देने के लिए कैसे करना चाहिए? – Adam
उपयोगकर्ता बिना किसी फ़ाइल को कैसे हटा सकता है पटकथा? –