<?php
define('IN_PHPBB', true); 
$phpbb_root_path = './';
include($phpbb_root_path . 'extension.inc'); 
include($phpbb_root_path . 'common.'.$phpEx); 

// standard session management 
$userdata = session_pagestart($user_ip, PAGE_INDEX); 
init_userprefs($userdata); 
// end session management
if( !$userdata['session_logged_in'] ) 
{ 
message_die(GENERAL_MESSAGE, 'You must log in to access this page'); 
}
// begin download script
    $dir = 'downloads/'; //geef een map aan met eindslash (. voor deze map)
    
    if(isset($_GET['bestand'])) //als ?bestand= bestaat
    {
        if(eregi('../', $_GET['bestand']) == FALSE) //als er geen ../ in de bestandsnaam voorkomt, dus geen upmap wordt aangevraagd
        {
            if(file_exists($dir.$_GET['bestand'])) //en ?bestand=.. is ook nog eens een bestaand bestand is
            {
                header('Content-type: Application/octet-stream'); //zet de header dat het bestand gedownload moet worden
                                                                  //en dat het dus niet in de browser afgespeeld kan worden
    
                header('Content-Disposition: attachment; filename='.$_GET['bestand']); //geef aan welk bestand gedownload moet worden
                readfile($dir.$_GET['bestand']); //en open vervolgens dat bestand
            }
            else //als het bestand niet bestaat
            {
                echo 'bestand bestaat niet'; //echo dat
            }
        }
        else //als er wel ../ in de bestandsnaam voorkomt
        {
            echo 'Deze map is niet toegankelijk'; //echo dat dat niet mag
        }
    }
    else //als ?bestand= niet is opgegeven
    {
        echo 'Geen bestand opgegeven'; //echo dat
    }
// end download script
?>