نمایش نتایج 1 تا 7 از 7

نام تاپیک: دانولد کردن یک عکس، نه نمایش آن!

  1. #1

    دانولد کردن یک عکس، نه نمایش آن!

    سلام
    اگر لینک عکس رو بزاریم و روش کلیک بشه معمولا اون عکس رو میخواد توی مرور گر نمایش بده
    حالا چیکار کنیم و چه لینکی رو بزاریم تا مستقیما اون عکس رو دانلود کنه ؟
    ممنون

  2. #2

    نقل قول: دانولد کردن یک عکس، نه نمایش آن!

    دوست عزیز
    اینو یه نیگاه بندازین
    http://forum.coppermine-gallery.net/...?topic=19425.0
    موفق باشید
    ما را نه غم دوزخ و نی حرص بهشت است!
    www.yaqubian.com

  3. #3
    کاربر دائمی
    تاریخ عضویت
    تیر 1384
    محل زندگی
    کاشان
    سن
    41
    پست
    505

    نقل قول: دانولد کردن یک عکس، نه نمایش آن!

    باید headerها رو تنظیم کنی. توی سایت یه جستجو بکنی یه تاپیک خیلی خوب براش هست

  4. #4

    نقل قول: دانولد کردن یک عکس، نه نمایش آن!

    چی رو جستجو کنم ؟

  5. #5
    کاربر دائمی آواتار angel_boy013
    تاریخ عضویت
    اردیبهشت 1385
    محل زندگی
    tehran-narmak
    پست
    236

    نقل قول: دانولد کردن یک عکس، نه نمایش آن!

    اینم یه کلاس برای این کار





    error_reporting (0);

    class Download_file
    {
    var $df_dirpath = "";
    var $df_contenttype = "";
    var $df_contentdisposition = "attachment";
    var $df_filename = "";
    var $df_size = 0;
    var $df_filefermisition = 0;






    function Download_file($path, $file_name)
    {
    if (($path) && ($file_name))
    {


    $this->fileExsit($path, $file_name);
    $this->fileInfo();
    $this->fileType();
    $this->init();


    }

    else
    {
    exit();
    }

    }

    function init()
    {
    ob_start();
    $this->download();
    ob_end_flush();
    ob_end_clean();
    $this->endExcute();


    }



    // file exsit or not
    function fileExsit($path, $file_name)
    {
    clearstatcache() ;
    $path = trim(stripslashes($path));


    if (is_dir($path))
    {
    $this->df_dirpath = $path . "/";

    }

    else
    {
    echo "The requested File <font size = 4 color ='red'><u>$file_name</u></font> was not found on this server.";
    $this->df_dirpath = NULL;
    exit();

    }

    $file_name = trim(stripslashes($file_name));
    $temp_fpath = $this->df_dirpath . $file_name;
    if (file_exists($temp_fpath))
    {
    $this->df_filename = $temp_fpath;




    }
    else
    {
    echo "The requested File <font size = 4 color ='red'><u>$file_name</u></font> was not found on this server.";
    $this->df_filename = NULL;
    exit();

    }


    }
    // Get file info
    function fileInfo()
    {
    if (($this->df_dirpath) && ($this->df_filename))
    {
    $this->df_size = filesize($this->df_filename);
    $this->df_filefermisition = substr(decoct(fileperms($this->df_filename)), -1);


    }
    else
    {
    $this->df_size = 0;
    $this->df_filefermisition = 0;
    exit();
    }

    }
    // Get file type
    function fileType()
    {
    if(($this->df_dirpath) && ($this->df_filename))
    {
    $fname = basename($this->df_filename);
    $ext = substr($this->df_filename ,-3 );
    switch( $ext ){
    case "pdf": $ctype="application/pdf"; break;
    case "exe": $ctype="application/octet-stream"; break;
    case "zip": $ctype="application/zip"; break;
    case "doc": $ctype="application/msword"; break;
    case "xls": $ctype="application/vnd.ms-excel"; break;
    case "ppt": $ctype="application/vnd.ms-powerpoint"; break;
    case "gif": $ctype="image/gif"; break;
    case "png": $ctype="image/png"; break;
    case "jpg": $ctype="image/jpg"; break;
    case "xml": $ctype="text/xml"; break;
    default : $ctype="application/force-download";
    }
    $this->df_contenttype = $ctype;

    }

    }
    //Download file
    function download()
    {
    session_cache_limiter();
    if (($this->df_filename) && ($this->df_contenttype) && ($this->df_filefermisition) > 4)
    {
    header("Pragma: public");
    header("Expires: 0");
    header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
    header("Content-Type:" .$this->df_contenttype);
    header("Content-Disposition: ".$this->df_contentdisposition."; filename=".basename($this->df_filename));
    header("Content-Transfer-Encoding: binary");
    header("Content-Length: ".$this->df_size);

    $fp = readfile($this->df_filename);
    return $fp;
    }
    else
    {
    echo "The requested File Type <font size = 4 color ='red'><u>$this->df_filename</u></font> was not Valied on this server." ;

    }


    }

    //End program and clean the data

    function endExcute()
    {

    clearstatcache();


    $this->df_dirpath = "";
    $this->df_contenttype = "";
    $this->df_contentdisposition = "attachment";
    $this->df_filename = "";
    $this->df_size = 0;
    $this->df_filefermisition = 0;

    unset($this->df_dirpath, $this->df_contenttype, $this->df_contentdisposition, $this->df_filename, $this->df_size, $this->df_filefermisition);

    }

    }







  6. #6

    نقل قول: دانولد کردن یک عکس، نه نمایش آن!

    حالا در مورد فایل های دیگه باید چیکار کرد ؟
    مثلا doc pdf

  7. #7
    کاربر دائمی آواتار angel_boy013
    تاریخ عضویت
    اردیبهشت 1385
    محل زندگی
    tehran-narmak
    پست
    236

    نقل قول: دانولد کردن یک عکس، نه نمایش آن!

    همون طور که میبینی توی این کلاس pdf ساپورت میکنه

    همچنین اگه توجه کنی


    case "pdf": $ctype="application/pdf"; break;
    case "exe": $ctype="application/octet-stream"; break;
    case "zip": $ctype="application/zip"; break;
    case "doc": $ctype="application/msword"; break;
    case "xls": $ctype="application/vnd.ms-excel"; break;
    case "ppt": $ctype="application/vnd.ms-powerpoint"; break;
    case "gif": $ctype="image/gif"; break;
    case "png": $ctype="image/png"; break;
    case "jpg": $ctype="image/jpg"; break;
    case "xml": $ctype="text/xml"; break;
    default : $ctype="application/force-download";



    همچنین میتونی هر هدری مه بخوای خودت اضافه کنی
    آخرین ویرایش به وسیله angel_boy013 : سه شنبه 10 دی 1387 در 20:38 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •