test-menu
index.php voor de hoofdmap:
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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
<?php
session_start();
error_reporting(E_ALL);
include 'functions.php';
$dir = array('.', 'peter', 'scripts', 'subsites'); // de directory die uitgelezen moet worden
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link href="style.css" type="text/css" rel="stylesheet" />
<title>Index</title>
</head>
<body>
<div style="float:left;" class="div">
<?php
foreach($dir as $dir) //pak 1 voor 1 de mappen uit de array $dir
{
if($handle = @opendir($dir)) //als de map gelezen kan worden
{
if($dir != '.') //als de map niet de actuele map is
{
echo '<h3>'.$dir.'</h3>'; //echo de map die gelezen wordt
}
else //als de map wel de actuele map is
{
echo '<h3>Deze map</h3>'; //echo dan 'Deze map', dat staat wat netter dan een '.'
}
echo '<table border="0" class="table">'; //en start een tabel
while (false !== ($file = readdir($handle))) //zolang er gelezen kan worden
{
$bestand = $dir ."/". $file; //we maken van de variabelen $dir en $file 1 variabele
$ext = pathinfo($bestand); //en vragen wat info op over het bestand
if(!isset($ext['extension'])) //als de extensie niet bestaat, is het dus een map
{
$ext['extension'] = 'dir'; //en dat geven we dus ook even aan
}
maplezen(1, $bestand, $file, $ext); //voer de functie maplezen uit, met de goede variabelen
}
closedir($handle); //sluit de geopende map
}
else //als de map niet gelezen kan worden
{
echo '<br /><b>Error!</b> De map '.$dir.' kon niet worden gelezen.'; //echo dat
}
echo '</table>'; //en echo even het einde van de tabel
}
?>
</div>
<div style="float:right; position: absolute; left: 225px; right: 0px; top: 8px;" class="div">
<?php
weergeefcontent1(); //voer de functie weergeefcontent1 uit
?>
</div>
</body>
</html>
session_start();
error_reporting(E_ALL);
include 'functions.php';
$dir = array('.', 'peter', 'scripts', 'subsites'); // de directory die uitgelezen moet worden
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link href="style.css" type="text/css" rel="stylesheet" />
<title>Index</title>
</head>
<body>
<div style="float:left;" class="div">
<?php
foreach($dir as $dir) //pak 1 voor 1 de mappen uit de array $dir
{
if($handle = @opendir($dir)) //als de map gelezen kan worden
{
if($dir != '.') //als de map niet de actuele map is
{
echo '<h3>'.$dir.'</h3>'; //echo de map die gelezen wordt
}
else //als de map wel de actuele map is
{
echo '<h3>Deze map</h3>'; //echo dan 'Deze map', dat staat wat netter dan een '.'
}
echo '<table border="0" class="table">'; //en start een tabel
while (false !== ($file = readdir($handle))) //zolang er gelezen kan worden
{
$bestand = $dir ."/". $file; //we maken van de variabelen $dir en $file 1 variabele
$ext = pathinfo($bestand); //en vragen wat info op over het bestand
if(!isset($ext['extension'])) //als de extensie niet bestaat, is het dus een map
{
$ext['extension'] = 'dir'; //en dat geven we dus ook even aan
}
maplezen(1, $bestand, $file, $ext); //voer de functie maplezen uit, met de goede variabelen
}
closedir($handle); //sluit de geopende map
}
else //als de map niet gelezen kan worden
{
echo '<br /><b>Error!</b> De map '.$dir.' kon niet worden gelezen.'; //echo dat
}
echo '</table>'; //en echo even het einde van de tabel
}
?>
</div>
<div style="float:right; position: absolute; left: 225px; right: 0px; top: 8px;" class="div">
<?php
weergeefcontent1(); //voer de functie weergeefcontent1 uit
?>
</div>
</body>
</html>
index.php voor een submap:
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
46
47
48
49
50
51
52
53
54
55
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
46
47
48
49
50
51
52
53
54
55
<div style="float:left;" class="div">
<?php
if(!isset($_GET['p']))
{
$_GET['p'] = '.';
}
$dir = array($_GET['p']); // de directory die hij uit moet lezen
$extensions = array('php', 'dir'); // de extensie die weergegeven moeten worden
$verboden = array('image.php', 'index.php');
foreach($dir as $dir)
{
$i = 0;
if ($handle = @opendir($dir))
{
$dir = str_replace('./', '', $_GET['p']);
echo '<h3>'.$dir.'</h3>';
echo '<table border="0" class="table">';
while (false !== ($file = readdir($handle)))
{
$bestand = $file ;
$ext = pathinfo($bestand);
if(isset($ext['extension']))
{
$ext['extension'] = $ext['extension'];
}
else
{
$ext['extension'] = 'dir';
}
maplezen(2, $bestand, $file, $ext);
$i++;
}
closedir($handle);
}
else
{
echo 'De map '.$dir.' kon niet worden gevonden.';
}
echo '</table>';
}
?>
</div>
<div style="margin-left:230px" class="div">
<?php
weergeefcontent2();
?>
</div>
<?php
if(!isset($_GET['p']))
{
$_GET['p'] = '.';
}
$dir = array($_GET['p']); // de directory die hij uit moet lezen
$extensions = array('php', 'dir'); // de extensie die weergegeven moeten worden
$verboden = array('image.php', 'index.php');
foreach($dir as $dir)
{
$i = 0;
if ($handle = @opendir($dir))
{
$dir = str_replace('./', '', $_GET['p']);
echo '<h3>'.$dir.'</h3>';
echo '<table border="0" class="table">';
while (false !== ($file = readdir($handle)))
{
$bestand = $file ;
$ext = pathinfo($bestand);
if(isset($ext['extension']))
{
$ext['extension'] = $ext['extension'];
}
else
{
$ext['extension'] = 'dir';
}
maplezen(2, $bestand, $file, $ext);
$i++;
}
closedir($handle);
}
else
{
echo 'De map '.$dir.' kon niet worden gevonden.';
}
echo '</table>';
}
?>
</div>
<div style="margin-left:230px" class="div">
<?php
weergeefcontent2();
?>
</div>
En ook nog functions.php
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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
<?php
$extensions = array('php', 'dir', 'zip', 'jpg'); // de extensies die weergegeven moeten worden (dir voor map)
$downloads = array('zip'); //bestanden die als download gegeven moeten worden (kunnen geen bestanden zijn die door de browser gelezen kunnen worden)
$verboden = array('index.php', 'functions.php'); //bestanden die niet weergeven moeten worden
$mapdirs = array('subsites'); //mappen waar alleen de submappen weergeven moeten worden
$extensiecontrole = array('php', 'html', 'htm', 'txt'); //bestanden die geinclude en gehighlight kunnen worden
$afbeeldingen = array('jpg', 'gif', 'jpeg', 'tiff', 'png'); //afbeeldingen
function extensiecontrole($bestand) //maak een extensiecontrolefunctie aan
{
global $extensiecontrole;
$info = pathinfo($bestand); //geef even wat info over het bestand
$extensie = strtolower($info['extension']); //en maak even de variabele $extensie, door van de extensie kleine letters te maken
if(in_array($extensie, $extensiecontrole)) //als de extensie in de array extensiecontrole is
{
return TRUE; //geef dan true terug
}
else //zo niet
{
return FALSE; //geef dan false terug
}
} //einde functie extensiecontrole
function mapcontroleren1($bestand, $file, $ext) //maak de functie mapcontroleren1 aan
{
global $dir; //pak de eerder aangemaakte $dir
global $mapdirs; //en de eerder aangemaakte $mapdirs
global $downloads; //en de eerder aangemaakte $downloads
global $afbeeldingen; //en dan ook nog de array afbeeldingen
if(in_array($dir, $mapdirs)) //als de $dir in $mapdirs voorkomt (als de opgegeven map aleen submappen moet weergeven)
{
if($ext['extension'] == 'dir') //als de extensie 'dir' is
{
echo '<tr>
<td width="125px" class="td">
<a href="'.$bestand.'" target="_new">
'. basename($file, '.'.$ext['extension']) .' ('.$ext['extension'].')
</a>
</td>
</tr>'; //echo de map dan, met linkje tabelletje, enz...
}
}
elseif(in_array($ext['extension'], $downloads)) //als de extensie in de download array voor komt
{
echo '<tr>
<td width="125px" class="td">
<a href="'.$bestand.'" target="_new">
• '. basename($file, '.'.$ext['extension']) .' ('.$ext['extension'].')
</a>
</td>
</tr>'; //echo de file dan, met linkje tabelletje, enz...
}
else //als de $dir niet in $mapdirs voorkomt (als de opgegeven map alle bestanden moet weergeven)
{
echo '<tr>
<td width="125px" class="td">
• <a href="?p='.$bestand.'">'. basename($file, '.'.$ext['extension']) .' ('.$ext['extension'].')</a>
</td>
<td width="30px" class="td">
<a href="'.$bestand.'" class="nieuw" target="_new">New</a>
</td>'; //echo dan de hele rotzooi, met een linkje erachter, waardoor het bestand in een nieuw venster geopend wordt
if((!is_dir($bestand)) && (!in_array($ext['extension'], $afbeeldingen))) //als het bestand geen map is
{
echo '<td width="30px" class="td">
<a href="?h='.$bestand.'" class="high">High</a>
</td>'; //dan kunnen we zelfs nog een linkje maken naar het hightlight gedeelte
}
echo '</tr>'; //en echo even het ende van de tabelrij
}
} //einde functie mapcontroleren1
function mapcontroleren2($bestand, $file, $ext)//maak de functie mapcontroleren2 aan
{
global $dir; //pak de eerder aangemaakte $dir
global $mapdirs; //en de eerder gemaakte $mapdirs
global $downloads; //en als laatste de array downloads
global $afbeeldingen; //en ook nog de array afbeeldingen
if(in_array($ext['extension'], $downloads)) //als de extensie in de download array voor komt
{
echo '<tr>
<td width="125px" class="td">
<a href="'.$_GET['p'].'/'.$bestand.'" target="_new">
• '. basename($file, '.'.$ext['extension']) .' ('.$ext['extension'].')
</a>
</td>
</tr>'; //echo de file dan, met linkje tabelletje, enz...
}
else //als de $dir niet in $mapdirs voorkomt (als de opgegeven map alle bestanden moet weergeven)
{
echo '<tr>
<td width="125px" class="td">
• <a href="?p='.$_GET['p'].'&p2='.$bestand.'">'. basename($file, '.'.$ext['extension']) .' ('.$ext['extension'].')</a><br>
</td>
<td width="30px" class="td">
<a href="'.$_GET['p'].'/'.$bestand.'" class="nieuw" target="_new">New</a><br>
</td>'; //echo dan de hele rotzooi, met een linkje erachter, waardoor het bestand in een nieuw venster geopend wordt
if((!is_dir($_GET['p'].'/'.$bestand)) && (!in_array($ext['extension'], $afbeeldingen))) //als het bestand geen map is
{
echo '<td width="30px" class="td">
<a href="?p='.$_GET['p'].'&h2='.$_GET['p'].'/'.$bestand.'" class="high">High</a><br>
</td>'; //dan kunnen we het highlighten
}
echo '</tr>'; //en echo weer het einde van de tabelrij
}
} //einde functie mapcontroleren2
function maplezen($a, $bestand, $file, $ext) //maak een functie aan voor het lezen van de map
{
global $extensions; //pak de eerder gemaakte $extensions
global $verboden; //en de eerder gemaakte $verboden
if((in_array($ext['extension'], $extensions)) && //als de extensie in de array $extensions voorkomt
($file != '.') && //en het bestand is niet '.'
($file != '..') && //en het bestand is ook niet '..'
(!in_array($file, $verboden))) //en het bestand komt niet voor in de array verboden
{
if($a == 1) //als de functie is aangeroepen met parameter 1
{
mapcontroleren1($bestand, $file, $ext); //voer dan mapcontroleren1 uit
}
elseif($a == 2) //als de functie is aangeroepen met parameter 2
{
mapcontroleren2($bestand, $file, $ext); //voer dan mapcontroleren2 uit
}
else //als de functie niet is aangeroepen met parameter 1 of 2
{
echo '<b>Error!</b> De functie mapcontroleren is aangeroepen met een ongeldige parameter (geen 1 of 2), het laden is gestopt'; //geef een error
exit; //en beindig het script, zodat we niet steeds bovenstaande melding krijgen
}
}
} //einde functie mapcontroleren
function weergeefcontent1() //maak de functie weergeefcontent1 aan
{
global $afbeeldingen; //we roepen de arrat afbeeldingen aan
global $ext; //en de array ext
if(isset($_GET['p'])) //als ?p= bestaat
{
if(is_dir($_GET['p'])) //en als de ?p=... een bestaande map is
{
if(file_exists($_GET['p'].'/index.php')) //en als ?p=... /index.php bestaat
{
include $_GET['p'].'/index.php'; //include ?p=... /index.php
}
else //als en als ?p=... /index.php niet bestaat
{
echo $_GET['p'].' bevat geen index'; //echo dat de map geen index heeft
}
}
elseif(file_exists($_GET['p'])) //als ?p=... geen bestaande map is, maar wel een bestaand bestand
{
$ext = pathinfo($_GET['p']); //we vragen weer is wat info op over het bestand
if(extensiecontrole($_GET['p']) == TRUE) //als de extensie controle op ?p=... true geeft
{
if(@!include $_GET['p']) //dan kunnen we het bestand includen, maar als dat toch niet goed gaat
{
echo 'kon niet includen'; //dan geven we dat even in een echo ;-)
}
}
elseif(in_array($ext['extension'], $afbeeldingen)) //als de extensie in de array afbeeldingen voorkomt
{
$_GET['p'] = str_replace('./', '', $_GET['p']); //replace de ./ door niks
echo '<h2>'.$_GET['p'].'</h2><br /><br /><img src="'.$_GET['p'].'">'; //echo de fotonaam en de foto
}
else //als de extensie controle false geeft
{
echo '<b>Error!</b> Bestanden met deze extensie kunnen niet worden weergeven in dit venster'; //echo dat er niet geinclude kan worden
}
}
else //als het bestand uit de get p niet bestaat
{
echo 'file bestaat niet'; //echo dat het bestand niet bestaat
}
}
elseif(isset($_GET['h'])) //als ?h= is geset
{
if(extensiecontrole($_GET['h']) == TRUE) //en de extensie controle geeft TRUE
{
highlight_file($_GET['h']); //dan kunnen we het bestand highlighten
}
else //als de extensiecontrole geen TRUE geeft
{
echo 'Kon niet highlighten'; //dan geven we echo dat er niet gehighlight kon worden
}
}
else //als er geen ?p= of ?h= bestaat
{
echo 'kies een script'; //echo dan dat je een script kunt kiezen
}
} //einde functie weergeefcontent1
function weergeefcontent2() //maak de functie weergeefcontent2 aan
{
global $afbeeldingen; //we roepen de arrat afbeeldingen aan
if(isset($_GET['p2'])) //als ?p2= bestaat
{
if(is_dir($_GET['p'].'/'.$_GET['p2'])) //en een combinatie van ?p= & ?p2= ook nog is een bestaande map geeft
{
if(file_exists($_GET['p'].'/'.$_GET['p2'].'/index.php')) //en de index bestaat ook nog
{
include $_GET['p'].'/'.$_GET['p2'].'/index.php'; //include dan die index
}
else //en als er geen index bestaat
{
echo $_GET['p2'].' bevat geen index'; //echo dan dat die map een index bevat
}
}
elseif(file_exists($_GET['p'].'/'.$_GET['p2'])) //als een combinatie van ?p= & ?p2= geen map geeft, maar wel een bestand
{
$ext = pathinfo($_GET['p2']); //we vragen weer is wat info op over het bestand
if(extensiecontrole($_GET['p'].'/'.$_GET['p2']) == TRUE) //en de extensie controle geeft TRUE
{
include $_GET['p'].'/'.$_GET['p2']; //dan kunnen we het bestand includen
}
elseif(in_array($ext['extension'], $afbeeldingen)) //als de extensie in de array afbeeldingen voorkomt
{
$_GET['p2'] = str_replace('./', '', $_GET['p'].'/'.$_GET['p2']); //replace de ./ door niks
echo '<h2>'.$_GET['p2'].'</h2><br /><br /><img src="'.$_GET['p2'].'">'; //echo de fotonaam en de foto
}
else //als de extensie controle false geeft
{
echo 'Bestanden met deze extensie kunnen niet worden weergeven in dit venster'; //echo dan dat dat soort bestanden niet geinclude kan worden
}
}
else //als het geen bestaand bestand of map is
{
echo 'file bestaat niet'; //tsjah, dan bestaat het niet hé, dus gooien we dat maar weer in een echo
}
}
elseif(isset($_GET['h2'])) //als h2 is geset
{
if(file_exists($_GET['h2'])) //en het is een bestaand bestand
{
if(is_dir($_GET['h2'])) //en ook nog is een map
{
if(file_exists($_GET['h2'].'/index.php')) //en de map bevat ook nog een index
{
highlight_file($_GET['h2'].'/index.php'); //dan kunnen we die highlighten
}
else //en als de map geen index bevat
{
echo '<b>Error!</b> Kan een map niet highlighten'; //echo dat dan
}
}
else //als het dan wel bestaat en zo, maar het is geen map
{
if(extensiecontrole($_GET['h2']) == TRUE) //en de extensiecontrole geeft TRUE
{
highlight_file($_GET['h2']); //dan kunnen we het bestand highlighten
}
else //als de extensiecontrole geen TRUE terug geeft
{
echo 'Dit soort bestanden kunnen niet worden weergeven als code'; //echo dan dat dat soort bestanden niet gehighlight kunnen worden
}
}
}
else //als het bestand niet bestaat
{
echo 'bestand bestaat niet'; //dan echoen we dat
}
}
else //als er geen ?p= of ?h= bestaat
{
echo 'kies een script.<br /><br /> Script made by <a href="http://www.chess-web.nl/">Chess-web webdesign</a>'; //echo dan een standaard tekstje
}
}
?>
$extensions = array('php', 'dir', 'zip', 'jpg'); // de extensies die weergegeven moeten worden (dir voor map)
$downloads = array('zip'); //bestanden die als download gegeven moeten worden (kunnen geen bestanden zijn die door de browser gelezen kunnen worden)
$verboden = array('index.php', 'functions.php'); //bestanden die niet weergeven moeten worden
$mapdirs = array('subsites'); //mappen waar alleen de submappen weergeven moeten worden
$extensiecontrole = array('php', 'html', 'htm', 'txt'); //bestanden die geinclude en gehighlight kunnen worden
$afbeeldingen = array('jpg', 'gif', 'jpeg', 'tiff', 'png'); //afbeeldingen
function extensiecontrole($bestand) //maak een extensiecontrolefunctie aan
{
global $extensiecontrole;
$info = pathinfo($bestand); //geef even wat info over het bestand
$extensie = strtolower($info['extension']); //en maak even de variabele $extensie, door van de extensie kleine letters te maken
if(in_array($extensie, $extensiecontrole)) //als de extensie in de array extensiecontrole is
{
return TRUE; //geef dan true terug
}
else //zo niet
{
return FALSE; //geef dan false terug
}
} //einde functie extensiecontrole
function mapcontroleren1($bestand, $file, $ext) //maak de functie mapcontroleren1 aan
{
global $dir; //pak de eerder aangemaakte $dir
global $mapdirs; //en de eerder aangemaakte $mapdirs
global $downloads; //en de eerder aangemaakte $downloads
global $afbeeldingen; //en dan ook nog de array afbeeldingen
if(in_array($dir, $mapdirs)) //als de $dir in $mapdirs voorkomt (als de opgegeven map aleen submappen moet weergeven)
{
if($ext['extension'] == 'dir') //als de extensie 'dir' is
{
echo '<tr>
<td width="125px" class="td">
<a href="'.$bestand.'" target="_new">
'. basename($file, '.'.$ext['extension']) .' ('.$ext['extension'].')
</a>
</td>
</tr>'; //echo de map dan, met linkje tabelletje, enz...
}
}
elseif(in_array($ext['extension'], $downloads)) //als de extensie in de download array voor komt
{
echo '<tr>
<td width="125px" class="td">
<a href="'.$bestand.'" target="_new">
• '. basename($file, '.'.$ext['extension']) .' ('.$ext['extension'].')
</a>
</td>
</tr>'; //echo de file dan, met linkje tabelletje, enz...
}
else //als de $dir niet in $mapdirs voorkomt (als de opgegeven map alle bestanden moet weergeven)
{
echo '<tr>
<td width="125px" class="td">
• <a href="?p='.$bestand.'">'. basename($file, '.'.$ext['extension']) .' ('.$ext['extension'].')</a>
</td>
<td width="30px" class="td">
<a href="'.$bestand.'" class="nieuw" target="_new">New</a>
</td>'; //echo dan de hele rotzooi, met een linkje erachter, waardoor het bestand in een nieuw venster geopend wordt
if((!is_dir($bestand)) && (!in_array($ext['extension'], $afbeeldingen))) //als het bestand geen map is
{
echo '<td width="30px" class="td">
<a href="?h='.$bestand.'" class="high">High</a>
</td>'; //dan kunnen we zelfs nog een linkje maken naar het hightlight gedeelte
}
echo '</tr>'; //en echo even het ende van de tabelrij
}
} //einde functie mapcontroleren1
function mapcontroleren2($bestand, $file, $ext)//maak de functie mapcontroleren2 aan
{
global $dir; //pak de eerder aangemaakte $dir
global $mapdirs; //en de eerder gemaakte $mapdirs
global $downloads; //en als laatste de array downloads
global $afbeeldingen; //en ook nog de array afbeeldingen
if(in_array($ext['extension'], $downloads)) //als de extensie in de download array voor komt
{
echo '<tr>
<td width="125px" class="td">
<a href="'.$_GET['p'].'/'.$bestand.'" target="_new">
• '. basename($file, '.'.$ext['extension']) .' ('.$ext['extension'].')
</a>
</td>
</tr>'; //echo de file dan, met linkje tabelletje, enz...
}
else //als de $dir niet in $mapdirs voorkomt (als de opgegeven map alle bestanden moet weergeven)
{
echo '<tr>
<td width="125px" class="td">
• <a href="?p='.$_GET['p'].'&p2='.$bestand.'">'. basename($file, '.'.$ext['extension']) .' ('.$ext['extension'].')</a><br>
</td>
<td width="30px" class="td">
<a href="'.$_GET['p'].'/'.$bestand.'" class="nieuw" target="_new">New</a><br>
</td>'; //echo dan de hele rotzooi, met een linkje erachter, waardoor het bestand in een nieuw venster geopend wordt
if((!is_dir($_GET['p'].'/'.$bestand)) && (!in_array($ext['extension'], $afbeeldingen))) //als het bestand geen map is
{
echo '<td width="30px" class="td">
<a href="?p='.$_GET['p'].'&h2='.$_GET['p'].'/'.$bestand.'" class="high">High</a><br>
</td>'; //dan kunnen we het highlighten
}
echo '</tr>'; //en echo weer het einde van de tabelrij
}
} //einde functie mapcontroleren2
function maplezen($a, $bestand, $file, $ext) //maak een functie aan voor het lezen van de map
{
global $extensions; //pak de eerder gemaakte $extensions
global $verboden; //en de eerder gemaakte $verboden
if((in_array($ext['extension'], $extensions)) && //als de extensie in de array $extensions voorkomt
($file != '.') && //en het bestand is niet '.'
($file != '..') && //en het bestand is ook niet '..'
(!in_array($file, $verboden))) //en het bestand komt niet voor in de array verboden
{
if($a == 1) //als de functie is aangeroepen met parameter 1
{
mapcontroleren1($bestand, $file, $ext); //voer dan mapcontroleren1 uit
}
elseif($a == 2) //als de functie is aangeroepen met parameter 2
{
mapcontroleren2($bestand, $file, $ext); //voer dan mapcontroleren2 uit
}
else //als de functie niet is aangeroepen met parameter 1 of 2
{
echo '<b>Error!</b> De functie mapcontroleren is aangeroepen met een ongeldige parameter (geen 1 of 2), het laden is gestopt'; //geef een error
exit; //en beindig het script, zodat we niet steeds bovenstaande melding krijgen
}
}
} //einde functie mapcontroleren
function weergeefcontent1() //maak de functie weergeefcontent1 aan
{
global $afbeeldingen; //we roepen de arrat afbeeldingen aan
global $ext; //en de array ext
if(isset($_GET['p'])) //als ?p= bestaat
{
if(is_dir($_GET['p'])) //en als de ?p=... een bestaande map is
{
if(file_exists($_GET['p'].'/index.php')) //en als ?p=... /index.php bestaat
{
include $_GET['p'].'/index.php'; //include ?p=... /index.php
}
else //als en als ?p=... /index.php niet bestaat
{
echo $_GET['p'].' bevat geen index'; //echo dat de map geen index heeft
}
}
elseif(file_exists($_GET['p'])) //als ?p=... geen bestaande map is, maar wel een bestaand bestand
{
$ext = pathinfo($_GET['p']); //we vragen weer is wat info op over het bestand
if(extensiecontrole($_GET['p']) == TRUE) //als de extensie controle op ?p=... true geeft
{
if(@!include $_GET['p']) //dan kunnen we het bestand includen, maar als dat toch niet goed gaat
{
echo 'kon niet includen'; //dan geven we dat even in een echo ;-)
}
}
elseif(in_array($ext['extension'], $afbeeldingen)) //als de extensie in de array afbeeldingen voorkomt
{
$_GET['p'] = str_replace('./', '', $_GET['p']); //replace de ./ door niks
echo '<h2>'.$_GET['p'].'</h2><br /><br /><img src="'.$_GET['p'].'">'; //echo de fotonaam en de foto
}
else //als de extensie controle false geeft
{
echo '<b>Error!</b> Bestanden met deze extensie kunnen niet worden weergeven in dit venster'; //echo dat er niet geinclude kan worden
}
}
else //als het bestand uit de get p niet bestaat
{
echo 'file bestaat niet'; //echo dat het bestand niet bestaat
}
}
elseif(isset($_GET['h'])) //als ?h= is geset
{
if(extensiecontrole($_GET['h']) == TRUE) //en de extensie controle geeft TRUE
{
highlight_file($_GET['h']); //dan kunnen we het bestand highlighten
}
else //als de extensiecontrole geen TRUE geeft
{
echo 'Kon niet highlighten'; //dan geven we echo dat er niet gehighlight kon worden
}
}
else //als er geen ?p= of ?h= bestaat
{
echo 'kies een script'; //echo dan dat je een script kunt kiezen
}
} //einde functie weergeefcontent1
function weergeefcontent2() //maak de functie weergeefcontent2 aan
{
global $afbeeldingen; //we roepen de arrat afbeeldingen aan
if(isset($_GET['p2'])) //als ?p2= bestaat
{
if(is_dir($_GET['p'].'/'.$_GET['p2'])) //en een combinatie van ?p= & ?p2= ook nog is een bestaande map geeft
{
if(file_exists($_GET['p'].'/'.$_GET['p2'].'/index.php')) //en de index bestaat ook nog
{
include $_GET['p'].'/'.$_GET['p2'].'/index.php'; //include dan die index
}
else //en als er geen index bestaat
{
echo $_GET['p2'].' bevat geen index'; //echo dan dat die map een index bevat
}
}
elseif(file_exists($_GET['p'].'/'.$_GET['p2'])) //als een combinatie van ?p= & ?p2= geen map geeft, maar wel een bestand
{
$ext = pathinfo($_GET['p2']); //we vragen weer is wat info op over het bestand
if(extensiecontrole($_GET['p'].'/'.$_GET['p2']) == TRUE) //en de extensie controle geeft TRUE
{
include $_GET['p'].'/'.$_GET['p2']; //dan kunnen we het bestand includen
}
elseif(in_array($ext['extension'], $afbeeldingen)) //als de extensie in de array afbeeldingen voorkomt
{
$_GET['p2'] = str_replace('./', '', $_GET['p'].'/'.$_GET['p2']); //replace de ./ door niks
echo '<h2>'.$_GET['p2'].'</h2><br /><br /><img src="'.$_GET['p2'].'">'; //echo de fotonaam en de foto
}
else //als de extensie controle false geeft
{
echo 'Bestanden met deze extensie kunnen niet worden weergeven in dit venster'; //echo dan dat dat soort bestanden niet geinclude kan worden
}
}
else //als het geen bestaand bestand of map is
{
echo 'file bestaat niet'; //tsjah, dan bestaat het niet hé, dus gooien we dat maar weer in een echo
}
}
elseif(isset($_GET['h2'])) //als h2 is geset
{
if(file_exists($_GET['h2'])) //en het is een bestaand bestand
{
if(is_dir($_GET['h2'])) //en ook nog is een map
{
if(file_exists($_GET['h2'].'/index.php')) //en de map bevat ook nog een index
{
highlight_file($_GET['h2'].'/index.php'); //dan kunnen we die highlighten
}
else //en als de map geen index bevat
{
echo '<b>Error!</b> Kan een map niet highlighten'; //echo dat dan
}
}
else //als het dan wel bestaat en zo, maar het is geen map
{
if(extensiecontrole($_GET['h2']) == TRUE) //en de extensiecontrole geeft TRUE
{
highlight_file($_GET['h2']); //dan kunnen we het bestand highlighten
}
else //als de extensiecontrole geen TRUE terug geeft
{
echo 'Dit soort bestanden kunnen niet worden weergeven als code'; //echo dan dat dat soort bestanden niet gehighlight kunnen worden
}
}
}
else //als het bestand niet bestaat
{
echo 'bestand bestaat niet'; //dan echoen we dat
}
}
else //als er geen ?p= of ?h= bestaat
{
echo 'kies een script.<br /><br /> Script made by <a href="http://www.chess-web.nl/">Chess-web webdesign</a>'; //echo dan een standaard tekstje
}
}
?>
en dan nog een klein beetje voor de lay-out, style.css:
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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
html {
background-color: #FFFFFF;
font-family: Arial, Helvetica, sans-serif;
font-size: 11px;
}
body {
background-color: #FFFFFF;
font-family: Arial, Helvetica, sans-serif;
font-size: 11px;
}
a {
text-decoration: none;
color:#000099;
}
.td {
border: 0px solid #FFFFFF;
font-family: Arial, Helvetica, sans-serif;
font-size: 11px;
}
a:link.high {
color: #006600;
}
a:link.nieuw {
color: #FF0000;
}
a:visited.high {
color: #006600;
}
a:visited.nieuw {
color: #FF0000;
}
a:hover.high {
color: #006600;
text-decoration: underline;
}
a:hover.nieuw {
color: #FF0000;
text-decoration: underline;
}
a:active.high {
color: #006600;
}
a:active.nieuw {
color: #FF0000;
}
.div {
background-color: #FFFFFF;
border-style:dotted;
border-color:#000000;
border-width:thin;
padding: 5px;
margin: 5px;
font-size: 100%;
}
.table {
background-color: #FFFFFF;
border-collapse: collapse;
}
code {
font-size: 12px;
}
background-color: #FFFFFF;
font-family: Arial, Helvetica, sans-serif;
font-size: 11px;
}
body {
background-color: #FFFFFF;
font-family: Arial, Helvetica, sans-serif;
font-size: 11px;
}
a {
text-decoration: none;
color:#000099;
}
.td {
border: 0px solid #FFFFFF;
font-family: Arial, Helvetica, sans-serif;
font-size: 11px;
}
a:link.high {
color: #006600;
}
a:link.nieuw {
color: #FF0000;
}
a:visited.high {
color: #006600;
}
a:visited.nieuw {
color: #FF0000;
}
a:hover.high {
color: #006600;
text-decoration: underline;
}
a:hover.nieuw {
color: #FF0000;
text-decoration: underline;
}
a:active.high {
color: #006600;
}
a:active.nieuw {
color: #FF0000;
}
.div {
background-color: #FFFFFF;
border-style:dotted;
border-color:#000000;
border-width:thin;
padding: 5px;
margin: 5px;
font-size: 100%;
}
.table {
background-color: #FFFFFF;
border-collapse: collapse;
}
code {
font-size: 12px;
}