Ben Php ile Hosta Dosya İndirmek İstiyorum Bunu Nasıl Yapabilirim
5
●1.295
function dosya_indir($link,$name=null)
{
$link_info = pathinfo($link); //Yol bilgilerini değişkene atıyoruz.
$uzanti = strtolower($link_info['extension']); //Dosyanın uzantısını değişkene atıyoruz.
$file = ($name) ? $name.'.'.$uzanti : $link_info['basename'];
//Eğer kayıt edilmek üzere dosya adı girilmişse, girilen dosya adını değişkene atıyouruz, girilmemişse orjinal adını değişkene atıyoruz.
$curl = curl_init($link);
$fopen = fopen($file,'w');
curl_setopt($curl, CURLOPT_HEADER,0);
curl_setopt($curl, CURLOPT_RETURNTRANSFER,1);
curl_setopt($curl, CURLOPT_HTTP_VERSION,CURL_HTTP_VERSION_1_0);
curl_setopt($curl, CURLOPT_FILE, $fopen);
curl_exec($curl);
curl_close($curl);
fclose($fopen);
}Kullanımı : dosya_indir('http://site/a.zip');dosya_indir('http://site/a.zip','dosya_adi',);Alıntıdır.<form action="action.php" method="post"> İndirilecek dosya: <input type="text" name="dosya" /><br /> Kaydedilecek Dosya: <input type="text" name="kayit" /><br /> <input type="submit" value="indir" /></form>action.php
<?php
$a = file_get_contents($_POST['dosya']) or die("Indirilecek dosya acilamadi");
$b = fopen($_POST['kayit'], "w");
fwrite($b, $a);
fclose($b);
echo "Dosya ".$_POST['kayit']." adıyla kaydedildi.";
?>unutma ki büyük dosyaları indirmeye kalkarsan sorun çıkarabilir.