Monday, 15 April 2013

PHP - Force download or view in browser depending on file type -



PHP - Force download or view in browser depending on file type -

i using next headers forcefulness download need seek , have browser display files pdf's , jpg's if file type, finding exntension easy plenty how can alter these headers open file in browser?

header("content-description: file transfer"); header("content-type: application/octet-stream"); $header="content-disposition: attachment; filename=".$filename.";"; header($header); header("content-transfer-encoding: binary"); header("expires:0"); header('cache-control: must-revalidate, post-check=0, pre-check=0'); header('pragma: public'); header("content-length: $filesize");

in order display file in browser, you'll need utilize right mime type. can set based on file extension, or can utilize finfo module:

function getcontenttype($filename) { $finfo = new finfo(fileinfo_mime); homecoming $finfo->file($filename); } header("content-type: " . getcontenttype($filename));

without this, browser assume can't handle application/octet-stream content, , forcefulness download anyway.

you should send content-disposition header if want forcefulness file downloaded. if remove header, browser can decide if should display file or download it.

php

No comments:

Post a Comment