کد دانلود

solmaz0022

New Member
من چطوری میتونم یه لینک درست کنم که وقتی کاربر روی این لینک کلیک میکنه بتونه فایلی رو دانلود کنه؟
ممنونم
 

phpweb

Active Member
برای اینکار معمولا آدرس فایل رو توی دیتابیس ذخیره می کنن و آی دی این فایل رو توی لینک نمایش می دن.

وقتی روی لینک کلیک کردید می تونید به دیتابیس وصل بشید و آدرس فایل رو بدست بیارید و فایل رو دانلود کنید.
 

solmaz0022

New Member
من نمیدونم تو لینک دقیقا چی بنویسم
میشه برام کامل کد رو بنویسید؟
 

phpweb

Active Member
من نمیدونم تو لینک دقیقا چی بنویسم
میشه برام کامل کد رو بنویسید؟
اگر تا حالا سیستم وبلاگ دهی نوشته باشید، این کار هم دقیقا به همین شکل هست.
من چطوری میتونم یه لینک درست کنم که وقتی کاربر روی این لینک کلیک میکنه بتونه فایلی رو دانلود کنه؟
شما برای چه کاری می خواید چنین لینکی ایجاد کنید؟ می تونید خیلی ساده لینک فایل رو توی صفحه به کاربر نمایش بدید و کاربر روش کلیک می کنه و فایل رو دانلود کنه.
 

solmaz0022

New Member
یه فایل آموزشی pdf دارم که میخوام این رو تو سایتم بزارم که قابل دانلود کردن باشه
خیر با سیستم وب لاگ دهی کار نکردم
اما میتونم آدرس فایل رو وارد دیتا بیس کنم و در داخل فایلم ذخیره کنم در واقع آپلود کردن رو بلدم اما بگین برای دانلود چیکار کنم
میشه کدشو برام بزارین؟
ممنون میشم
 

phpweb

Active Member
اما میتونم آدرس فایل رو وارد دیتا بیس کنم و در داخل فایلم ذخیره کنم در واقع آپلود کردن رو بلدم اما بگین برای دانلود چیکار کنم
اگه آپلود کردید، می تونید آدرس فایل رو توی صفحه قرار بدید. کاربر روی لینک کلیک می کنه و فایل رو دانلود می کنه. دیگه نیازی به کد نویسی نیست.

به این صورت بنویسید:
کد:
<a href="http://your/file/address">برای دانلود کلیک کنید</a>
بجای http://your/file/address آدرس پی دی اف رو قرار بدید.
 

solmaz0022

New Member
من این کار رو برای عکس انجام دادم منو میبره به صفحه ای که عکس در اون هست اما اون پنجره دانلود رو باز نمیکنه
 

phpweb

Active Member
برای دانلود از این تابع استفاده کنید:
باید آدرس فایل رو از دیتابیس بخونید یا با متد گت آدرس رو به این اسکریپت بدید.
PHP:
    function get_mime($filename)
            {  
                if(function_exists('finfo_file')) {
                    $finfo = finfo_open(FILEINFO_MIME_TYPE);  
                    $mime = finfo_file($finfo, $filename);  
                    finfo_close($finfo);  
                    return $mime;  
                }  
                /*
                if(function_exists('mime_content_type')) {
                    return mime_content_type($filename);  
                    }  
                */
                $map = array(  
                    'txt'=>'text/plain','htm'=>'text/html',  
                    'swf'=>'application/x-shockwave-flash',  
                    'flv'=>'video/x-flv','png'=>'image/png',  
                    'jpeg'=>'image/jpeg','jpeg'=>'image/jpeg',  
                    'jpg'=>'image/jpeg','gif'=>'image/gif',  
                    'bmp'=>'image/bmp','tiff'=>'image/tiff',  
                    'ico'=>'image/vnd.microsoft.icon',  
                    'tif'=>'image/tiff','svg'=>'image/svg+xml',  
                    'svgz'=>'image/svg+xml','zip'=>'application/zip',  
                    'msi'=>'application/x-msdownload',  
                    'cab'=>'application/vnd.ms-cab-compressed',  
                    'mp3'=>'audio/mpeg','qt'=>'video/quicktime',  
                    'mov'=>'video/quicktime','pdf'=>'application/pdf',  
                    'psd'=>'image/vnd.adobe.photoshop',  
                    'ai'=>'application/postscript',  
                    'eps'=>'application/postscript',  
                    'ps'=>'application/postscript',  
                    'doc'=>'application/msword','rtf'=>'application/rtf',  
                    'xls'=>'application/vnd.ms-excel',  
                    'ppt'=>'application/vnd.ms-powerpoint',   
                    'odt'=>'application/vnd.oasis.opendocument.text',  
                    'ods'=>'application/vnd.oasis.opendocument.spreadsheet'  
                );  
                $ext = end( explode('.',strtolower($filename)) );  
                return (array_key_exists($ext, $map) ?  
                $map[$ext] : 'application/octet-stream');  
            }
            $mytype=get_mime('fileaddres');

            header("Cache-Control: public");
            header("Content-Description: File Transfer");
            header('Content-Disposition: attachment; filename=' . urlencode('newname'));   
            header('Content-Type:'. $mytype);
            header('Content-Length: ' . filesize('fileaddres'));
            echo file_get_contents('fileaddres');

        }
 
آخرین ویرایش:

solmaz0022

New Member
آدرس فایل رو بدست میارم اما نمیدونم چطوری به این کد که دادین نسبت بدم​
 

phpweb

Active Member
آدرس فایل رو توی یه متغیر قرار بدید و متغیر رو بجای 'fileaddres' قرار بدید.
بجای 'newname' هم اسم جدید فایل رو تعیین کنید. موقع ذخیره فایل توی سیستم، فایل با این اسم نمایش داده می شه.
 

جدیدترین ارسال ها

بالا