[TYPO3] moc-file manager download problem

andreas stein andre01 at typotemp.com
Fri Apr 21 11:16:07 CEST 2006

It seems the support had stopped long ago - many small bugs are in some 
files. And the changes which where made through developing of typo3, mysql 
and php where ignored. Only one thing i found out: the ext_tables.sql file 
has bugs - i have to made the log table manually. Now the log table works 
but still the download doesnt start - i guess it comes through a change of 
php4 to php5. Prob. somebody know the point:

     *  TASK = download
    if(!empty($filename) && ($task == "download")) {
    $name = t3lib_div::resolveBackPath("$dir/$filename");
    $len = strlen($this->mount->basedir);
//    print "Test 1".substr($name,0,$len)."<br />";
//    print "Test 2".$this->mount->basedir."<br />";
    if(substr($name,0,$len)!= $this->mount->basedir) {

     $content = '<p 
        return $this->pi_wrapInBaseClass($content);
      if(!($this->hasAccess($this->mount,$dir,"read"))) {
        $content = '<p 
        return $this->pi_wrapInBaseClass($content);
      $this->dbObj->sql_query("UPDATE tx_mocfilemanager_files SET 
downloads=downloads + 1 WHERE 
AND mount=".intval($this->mount->uid));

// function log($action,$path,$mountId,$size) {

      //    $file=$this->removeFirstSlash($file);

      //Clean all output buffers.
      while (@ob_end_clean());
      //Set time limit to value given in conf
      if($this->conf["timeLimit"]>0) {
      if($this->conf["killChild"]) {
      // including mimetypes.php here means it is only included when 
required, thereby saving parsing time for all other requests
      // extract the file extesion and attempt to determine the Mime type 
from the file's extension
      $fileinfo = t3lib_div::split_fileref($filename);
      $mimetype = $mimetypes[$fileinfo["fileext"]];
      if ($mimetype == "") {
        $mimetype = "application/octet-stream";
      $name = "$dir/$filename";
      //      return "Name: $dir/$filename";
      $fp = @fopen($name, 'rb');
    if(!$fp) {
     return "File not found";
      // send the right headers
      header("Cache-control: must-revalidate, post-check=0, pre-check=0");
      header("Content-Transfer-Encoding: binary");
      header("Content-Type: $mimetype");
      header("Content-Length: ".filesize($name));
      header("Content-Disposition: attachment; filename=$filename");
      header("Cache-control: private");
      while (!feof($fp)) {
        $buffer = fgets($fp, 4096);
        echo $buffer;

thanx andreas

>> I've Installed the extensions Moc filemanager. Everything works
>> BUT......
>> If I would like to download one of the file, the following errors are 
>> displayed:

More information about the TYPO3-english mailing list