I'm downloading a file through php script and everything work perfectly except one ugly truth. The downloaded file keep the same url and with original name appended. How do I maintain the same filename when file downloaded?
http://bachday.com/index.php?page=custom&file=mmailer/download.php?mfile=sample.docx
if (isset($_GET['mfile'])) { $file = $_SERVER['DOCUMENT_ROOT'].'/oc-content/plugins/mmailer/pfile/'.$_GET['mfile']; if (file_exists($file) && is_readable($file) && preg_match('/\.docx$/',$file)) { header('Content-Type: application/docx'); header("Content-Disposition: attachment; filename=\"$file\""); readfile($file); /* header("Expires: 0"); header("Cache-Control: no-cache, must-revalidate"); header("Pragma: no-cache"); echo (readfile($file));*/ } else { header("HTTP/1.0 404 Not Found"); echo "Error 404: File Not Found:
$file"; }
header("Content-Disposition: attachment; filename={$name}.{$file_ending}");
the difference is in concatenating. – Dipesh Parmar