beveiligd-downloadphp-script-dmv-phpbb
Gesponsorde koppelingen
PHP script bestanden
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
<?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
?>
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
?>