PHP Smart Read File Problem Pls Help

software development

#1

Hello Friends I am newbie here.
I have a problem in with my script

for adding prefixes of my site name on every content downloaded from my site

check the url
http://trickywap.com/load2.php?id=60280
on go to this url we can download the file .But the downloaded contents get corrupted where is the problem the main two php files used for this
is
load2.php
[php] <?php

include 'moduls/ini.php';

include 'moduls/connect.php';

include 'moduls/fun.php';

$id = intval($_GET['id']);


$d = mysql_fetch_row(mysql_query('SELECT TRIM(`path`) FROM `files` WHERE `id` = '.$id.' LIMIT 1'));

click_change();


if(file_exists($d[0]))

{

require 'download_manager.php';

mysql_query('UPDATE `files` SET `loads`=`loads`+1, `timeload`='.$time.' WHERE `id`='.$id); 

$file=$d[0];

$path_parts = pathinfo($file);

$fname=$path_parts['filename'];

$ext=$path_parts['extension'];

$prfx="(WWW.TrickyWAP.COM)";

$filename=$fname.'_'.$prfx.'.'.$ext;

$filename=str_replace(" ","_",$filename);

mysql_query('UPDATE `files` SET `loads`=`loads`+1, `timeload`='.$time.' WHERE `id`='.$id);

smartReadFile($file,$filename,getmime($ext),intval($settings['speed']));

exit;

}

else

{

print $hackmess;

}

?>[/php]

and download_manager.php is

[php] <?php

    function smartReadFile($location, $filename, $mimeType='application/octet-stream'){ 

    if($mimeType==''){

    $mimeType='application/octet-stream';

    }

    if(!file_exists($location)){ 

    header ("HTTP/1.0 404 Not Found");

    return;

    }

     

    $size=filesize($location);

    $time=date('r',filemtime($location));

     

    $fm=@fopen($location,'rb');

    if(!$fm){ 

    header ("HTTP/1.0 505 Internal server error");

    return;

    }

     

    $begin=0;

    $end=$size;

     

    if(isset($_SERVER['HTTP_RANGE'])){ 

    if(preg_match('/bytes=\h*(\d+)-(\d*)[\D.*]?/i', $_SERVER['HTTP_RANGE'], $matches)){ 

    $begin=intval($matches[0]);

    if(!empty($matches[1]))

    $end=intval($matches[1]);

    }

    }

     

    if($begin>0||$end<$size) header('HTTP/1.0 206 Partial Content');

    else header('HTTP/1.0 200 OK'); 

     

    header("Content-Type: $mimeType");

    header('Cache-Control: public, must-revalidate, max-age=0');

    header('Pragma: no-cache'); 

    header('Accept-Ranges: bytes');

    header('Content-Length:'.($end-$begin));

    header("Content-Range: bytes $begin-$end/$size");

    header("Content-Disposition: inline; filename=$filename");

    header("Content-Transfer-Encoding: binary\n");

    header("Last-Modified: $time");

    header('Connection: close'); 

     

    $cur=$begin;

    fseek($fm,$begin,0);

    while(!feof($fm)&&$cur<$end&&(connection_status()==0)){ 

    print fread($fm,min(1024*16,$end-$cur));

    $cur+=1024*16;

     }

    }

    function getmime($ext) {

    $mime= array(

      "ez" => "application/andrew-inset",

      "hqx" => "application/mac-binhex40",

      "cpt" => "application/mac-compactpro",

      "doc" => "application/msword",

      "bin" => "application/octet-stream",

      "dms" => "application/octet-stream",

      "lha" => "application/octet-stream",

      "lzh" => "application/octet-stream",

      "exe" => "application/octet-stream",

      "class" => "application/octet-stream",

      "so" => "application/octet-stream",

      "dll" => "application/octet-stream",

      "oda" => "application/oda",

      "pdf" => "application/pdf",

      "ai" => "application/postscript",

      "eps" => "application/postscript",

      "ps" => "application/postscript",

      "smi" => "application/smil",

      "smil" => "application/smil",

      "wbxml" => "application/vnd.wap.wbxml",

      "wmlc" => "application/vnd.wap.wmlc",

      "wmlsc" => "application/vnd.wap.wmlscriptc",

      "bcpio" => "application/x-bcpio",

      "vcd" => "application/x-cdlink",

      "pgn" => "application/x-chess-pgn",

      "cpio" => "application/x-cpio",

      "csh" => "application/x-csh",

      "dcr" => "application/x-director",

      "dir" => "application/x-director",

      "dxr" => "application/x-director",

      "dvi" => "application/x-dvi",

      "spl" => "application/x-futuresplash",

      "gtar" => "application/x-gtar",

      "hdf" => "application/x-hdf",

      "js" => "application/x-javascript",

      "skp" => "application/x-koan",

      "skd" => "application/x-koan",

      "skt" => "application/x-koan",

      "skm" => "application/x-koan",

      "latex" => "application/x-latex",

      "nc" => "application/x-netcdf",

      "cdf" => "application/x-netcdf",

      "sh" => "application/x-sh",

      "shar" => "application/x-shar",

      "swf" => "application/x-shockwave-flash",

      "sit" => "application/x-stuffit",

      "sv4cpio" => "application/x-sv4cpio",

      "sv4crc" => "application/x-sv4crc",

      "tar" => "application/x-tar",

      "tcl" => "application/x-tcl",

      "tex" => "application/x-tex",

      "texinfo" => "application/x-texinfo",

      "texi" => "application/x-texinfo",

      "t" => "application/x-troff",

      "tr" => "application/x-troff",

      "roff" => "application/x-troff",

      "man" => "application/x-troff-man",

      "me" => "application/x-troff-me",

      "ms" => "application/x-troff-ms",

      "ustar" => "application/x-ustar",

      "src" => "application/x-wais-source",

      "xhtml" => "application/xhtml+xml",

      "xht" => "application/xhtml+xml",

      "zip" => "application/zip",

      "au" => "audio/basic",

      "snd" => "audio/basic",

      "mid" => "audio/midi",

      "midi" => "audio/midi",

      "kar" => "audio/midi",

      "mpga" => "audio/mpeg",

      "mp2" => "audio/mpeg",

      "mp3" => "audio/mpeg",

      "aif" => "audio/x-aiff",

      "aiff" => "audio/x-aiff",

      "aifc" => "audio/x-aiff",

      "m3u" => "audio/x-mpegurl",

      "ram" => "audio/x-pn-realaudio",

      "rm" => "audio/x-pn-realaudio",

      "rpm" => "audio/x-pn-realaudio-plugin",

      "ra" => "audio/x-realaudio",

      "wav" => "audio/x-wav",

      "pdb" => "chemical/x-pdb",

      "xyz" => "chemical/x-xyz",

      "bmp" => "image/bmp",

      "gif" => "image/gif",

      "ief" => "image/ief",

      "jpeg" => "image/jpeg",

      "jpg" => "image/jpeg",

      "jpe" => "image/jpeg",

      "png" => "image/png",

      "tiff" => "image/tiff",

      "tif" => "image/tif",

      "djvu" => "image/vnd.djvu",

      "djv" => "image/vnd.djvu",

      "wbmp" => "image/vnd.wap.wbmp",

      "ras" => "image/x-cmu-raster",

      "pnm" => "image/x-portable-anymap",

      "pbm" => "image/x-portable-bitmap",

      "pgm" => "image/x-portable-graymap",

      "ppm" => "image/x-portable-pixmap",

      "rgb" => "image/x-rgb",

      "xbm" => "image/x-xbitmap",

      "xpm" => "image/x-xpixmap",

      "xwd" => "image/x-windowdump",

      "igs" => "model/iges",

      "iges" => "model/iges",

      "msh" => "model/mesh",

      "mesh" => "model/mesh",

      "silo" => "model/mesh",

      "wrl" => "model/vrml",

      "vrml" => "model/vrml",

      "css" => "text/css",

      "html" => "text/html",

      "htm" => "text/html",

      "asc" => "text/plain",

      "txt" => "text/plain",

      "rtx" => "text/richtext",

      "rtf" => "text/rtf",

      "sgml" => "text/sgml",

      "sgm" => "text/sgml",

      "tsv" => "text/tab-seperated-values",

      "wml" => "text/vnd.wap.wml",

      "wmls" => "text/vnd.wap.wmlscript",

      "etx" => "text/x-setext",

      "xml" => "text/xml",

      "xsl" => "text/xml",

      "mpeg" => "video/mpeg",

      "mpg" => "video/mpeg",

      "mpe" => "video/mpeg",

      "qt" => "video/quicktime",

      "mov" => "video/quicktime",

      "mxu" => "video/vnd.mpegurl",

      "avi" => "video/x-msvideo",

      "movie" => "video/x-sgi-movie",

      "ice" => "x-conference-xcooltalk",

      "jad" => "text/vnd.sun.j2me.app-descriptor",

      "qcp" => "audio/vnd.qcelp",

      "3gp" => "video/3gpp",

      "mp4" => "video/mp4",

      "wgz" => "x-nokia-widget",

      "mms" => "application/vnd.wap.mms-message",

      "sis" => "application/vnd.symbian.install",

      "sisx" => "x-epoc/x-sisx-app",

      "jar" => "application/java-archive",

      "tpl" => "application/vnd.sonyericsson.mms-template",

      "rng" => "application/vnd.Nokie.ringing-tone",

      "ngd" => "application/x-nokiagamedata",

      "nqd" => "application/vnd.nokia.gamedata",

      "aos" => "application/x-nokia-9000-communicator-add-on-software",

      "n3a" => "image/vnd.nok-3dscreensaver",

      "thm" => "application/vnd.eri.thm",

      "nth" => "application/vnd.nok-s40theme"

    );

    return $mime[$ext];

    } [/php]

Any php experts pls help me pls…
i am uas


#2

Look at this post here…

http://www.php.net/manual/en/function.header.php#102175

The Content type must be set specifically to what the file type being sent down to the browser, not the extension of the file (which is what you appear to be doing)