में हम इसे उस तरह से करने के लिए ब्राउज़र रीडायरेक्ट करेगा: सबसे पहले इस स्क्रिप्ट जोड़ें।
<script type="text/javascript">
function populateIframe(id,path)
{
var ifrm = document.getElementById(id);
ifrm.src = "download.php?path="+path;
}
</script>
इस जहाँ आप डाउनलोड बटन चाहते प्लेस (यहाँ हम सिर्फ एक लिंक का उपयोग करें):
<iframe id="frame1" style="display:none"></iframe>
<a href="javascript:populateIframe('frame1','<?php echo $path; ?>')">download</a>
फ़ाइल 'download.php' (अपने सर्वर पर डाल करने की आवश्यकता है) बस में शामिल हैं:
<?php
header("Content-Type: application/octet-stream");
header("Content-Disposition: attachment; filename=".$_GET['path']);
readfile($_GET['path']);
?>
तो जब आप लिंक पर क्लिक करें, छिपा iframe तो हो जाता है/sourcefile 'download.php' खुल जाता है। पैरामीटर के रूप में पथ के साथ। हमें लगता है कि यह सबसे अच्छा समाधान है!
यह ध्यान दिया जाना चाहिए कि इस समाधान का PHP हिस्सा एक साधारण प्रदर्शन और संभावित रूप से बहुत ही असुरक्षित है। यह उपयोगकर्ता को किसी भी फ़ाइल को डाउनलोड करने की इजाजत देता है, न केवल एक पूर्व परिभाषित सेट।वे साइट पर ही के स्रोत कोड के कुछ हिस्सों डाउनलोड कर सकते हैं, संभवतः एपीआई साख आदि
जब यह से आइफ्रेम निकालने के लिए सुरक्षित हो जाएगा डोम? – AMember