foto paginas met upload systeem

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Ventilatiesysteem Productontwikkelaar HBO WO Verwa

Samengevat: Zij bieden flexibele ventilatiematerialen, geluidsdempers, rookgasafvoer producten en industrieslangen. Ben jij een technisch productontwikkelaar? Heb jij ervaring met het ontwikkelen van nieuwe producten? Vaste baan: Technisch Productontwikkelaar HBO WO €3.000 - €4.000 Zij bieden een variëteit aan flexibele ventilatiematerialen, geluiddempers, rookgasafvoer producten, industrieslangen en ventilatieslangen voor de scheepsbouw. Met slimme en innovatieve materialen zorgen wij voor een gezonde en frisse leefomgeving. Deze werkgever is een organisatie die volop in ontwikkeling is met hardwerkende collega's. Dit geeft goede ontwikkelingsmogelijkheden. De branche van dit bedrijf is Techniek en Engineering. Functie: Voor de vacature als Technisch Productontwikkelaar Ede Gld HBO WO ga

Bekijk vacature »

Martijn van H

Martijn van H

27/10/2013 02:56:48
Quote Anchor link
Beste hulptroepen,

Ik had een vraag en waarschijnlijk kunnen jullie mij hier wel mee helpen.

Ik heb zelf een website zie link: http://www.lecoutrecht.nl

Nu zou ik graag een upload pagina willen hebben + een pagina waarbij hij elke keer 8 foto's weergeeft.( zoals het er nu ook uit ziet )
En het moet natuurlijk ook op volgorde lopen dus:

De laatste foto die je upload moet als 1ste te zien zijn.

Nu als ik elke keer een foto hebt moet ik inloggen op de server en dan de foto in de map plaatsen en de file openen en de foto naam invoegen. Beetje extreem veel werk he? :)

Wie kan mij helpen om van dit langdurige probleem af te komen?


Ik hoor graag meer van jullie,

Alvast bedankt,
Martijn van H

Toevoeging op 27/10/2013 03:58:10:

Nu heb ik zelf al wat kunnen vinden en kunnen aanpassen, maar nu zit ik nog met iets.

Dit is mijn browse.php

Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta name="keywords" content="" />
<meta name="description" content="" />
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>Welkom op Leco Utrecht</title>
<link href="style.css" rel="stylesheet" type="text/css" media="screen" />
</head>
<body>
<div id="wrapper">
<div id="page">
<div id="page-bgtop">
<div id="page-bgbtm">
<div id="content">
<div class="post">
<h1 class=" "><a href="#"><i>Foto's</i> </a></h1>
<div style="clear: both;">&nbsp;</div>
<div class="">
<p></p>
<!-----------------------------------------------------------READDIR--------------------------------------------------->

<?php

$dir
= "uploadmap/";  // dezelfde map als bij het uploaden
$exten = array('jpg', 'JPG', 'gif', 'GIF', 'png', 'PNG', 'exe', 'EXE', 'zip', 'ZIP', 'htm', 'HTM', 'html', 'HTML', 'rar', 'RAR', 'mp3', 'MP3', 'WMA', 'wma', 'AVI', 'avi', 'MPG', 'mpg', 'MPEG', 'mpeg', 'BMP', 'bmp');  // de toegestaande extensies
if ($handle = opendir($dir))
{

    while (false !== ($file = readdir($handle))) {
        $bestand = $dir ."". $file ;
        $ext = pathinfo($bestand);
        if(in_array($ext['extension'], $exten))
        {

        for($i=1; $i<=$count-2; $i++)
            $suffix .= '' . $temp[$i];
    print(ucfirst("-- <a href='$dir". $file ."' onmouseover=\"popup('<img src=$bestand height=100 />','0')\"; onmouseout=\"stopthumb()\"> ".substr($file, 0, strlen($file) - (strlen($file) - strrpos($file, ".")))." </a> --<br>"));
        }
    }

    if (empty($handle))
    {

    
        echo "Nog geen bestanden geupload";
        
    }

    closedir($handle);
}


?>

<br>
<p>
<br>
</div>
</div>
<div style="clear: both;">&nbsp;</div>
</div>
<!-- end #content -->
<div id="sidebar">
<div id="logo">
<h4><a href="#">LECO</a></h4>
<h3><a href="#">Utrecht</a></h3>
</div>
<div id="menu">
<ul>
<li class="http://www.lecoutrecht.nl"><a href="http://www.lecoutrecht.nl/index.php">Welkom</a></li>
<li><a href="http://www.lecoutrecht.nl/algemenevoorwaarden.php">Algemene voorwaarden</a></li>
<li><a href="http://www.lecoutrecht.nl/offerte.php">Vrijblijvende offerte aanvraag</a></li>
<li><a href="http://www.lecoutrecht.nl/fotos_9.php">Foto's</a></li>
<li><a href="http://www.lecoutrecht.nl/gb/gbook.php">Gastenboek</a></li>
<li><a href="http://www.lecoutrecht.nl/contact.php">Contact</a></li>
</ul>
</div>
<ul>
</ul>
</div>
<!-- end #sidebar -->
<div style="clear: both;">&nbsp;</div>
</div>
</div>
</div>
<!-- end #page -->
</div>
<div id="footer">
 <center><a href="#">Ingeschreven bij de KVK te Utrecht onder nummer 54875412</a><br>
 <a href="#">BTW nummer: 8514.74.305.B01</a><br>
<br><a href="#">Copyright &copy; 2013 leco. All rights reserved.</a></center>
</div>
<!-- end #footer -->
</body>
</html>


En dit is mijn upload.php

Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta name="keywords" content="" />
<meta name="description" content="" />
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>Welkom op Leco Utrecht</title>
<link href="style.css" rel="stylesheet" type="text/css" media="screen" />
</head>
<body>
<div id="wrapper">
<div id="page">
<div id="page-bgtop">
<div id="page-bgbtm">
<div id="content">
<div class="post">
<h1 class=" "><a href="#"><i>Foto's</i> </a></h1>
<div style="clear: both;">&nbsp;</div>
<div class="">
<p></p>








<tr><td align="left">
<p>

<?php

$map
= "uploadmap/";  //map waar naar geupload moet worden

$max = "10000000000";  //max bytes

$ext = "jpg JPG gif GIF png PNG exe EXE zip ZIP htm HTM html HTML rar RAR mp3 MP3 WMA wma AVI avi MPG mpg MPEG mpeg BMP bmp";  //toegestaande extensies


if ($_POST['Uploaden'])
{
  
    if (!$_FILES['bestand'])  
        print ("Geef een bestand op!");
    else
    {  

        $bestand2 = explode("\\", $_FILES['bestand']['name']);  
        $laatste = count($bestand2) - 1;  
        $bestand2 = "$bestand2[$laatste]";  
        $bestand2 = str_replace(" ", "", "$bestand2");
        $bestand2 = strtolower($bestand2);

        
        $bestand3 = explode(".", $bestand2);  
        $laatste = count($bestand3) - 1;  
        $bestand3 = "$bestand3[$laatste]";  
        $bestand3 = strtolower($bestand3);  
            
        $ext = strtolower($ext);  
        $ext = explode(" ", $ext);  
        $aantal = count($ext);  
        
        for ($tel = 0;$tel < $aantal; $tel++)
        {
  
            if ($bestand3 == $ext[$tel])
            {
  
                $extfout = "nee";  
            }
        }
  
    
        if (!$extfout)
        {
  
            print ("Het bestand <b>$bestand2</b> kan niet worden geupload omdat de extensie niet is toegestaan!, mail ff welke extensie 't is!");  
        }
  
        else  
        {  
            if ($_FILES['bestand']['size'] > $max)  
                print ("Het bestand <b>$bestand2</b> is groter dan $max bytes!");  
            else  
            {  
                $file = $map ."". $bestand2;
                move_uploaded_file($_FILES['bestand']['tmp_name'], "$file");  
                print ("Het bestand <b>\"$bestand2\"</b> is met succes geupload!<br>");
                print ("Het bestand kun je terug vinden voor forums met deze link:<p>");
                print ("<a href='$file'><b>http://www.lecoutrecht.nl/uploadmap/$file</b></a>"); //moet uiteraard je eigen adres ervoor!
            }  
        }
    }
}
  

print ("<form method=post action=" . $_SERVER['PHP_SELF'] . " enctype=multipart/form-data>
Bestand: <input type=\"file\" name=\"bestand\">
<input type=\"submit\" name=\"Uploaden\" value=\"Uploaden\"></form>"
);

 ?>


<hr color="6b140e" width="100%">




<!-----------------------------------------------------------READDIR--------------------------------------------------->
<?php

$dir
= "uploadmap/";  // dezelfde map als bij het uploaden
$exten = array('jpg', 'JPG', 'gif', 'GIF', 'png', 'PNG', 'exe', 'EXE', 'zip', 'ZIP', 'htm', 'HTM', 'html', 'HTML', 'rar', 'RAR', 'mp3', 'MP3', 'WMA', 'wma', 'AVI', 'avi', 'MPG', 'mpg', 'MPEG', 'mpeg', 'BMP', 'bmp');  // de toegestaande extensies
if ($handle = opendir($dir))
{

    while (false !== ($file = readdir($handle))) {
        $bestand = $dir ."". $file ;
        $ext = pathinfo($bestand);
        if(in_array($ext['extension'], $exten))
        {

        for($i=1; $i<=$count-2; $i++)
            $suffix .= '' . $temp[$i];
    print(ucfirst("-- <a href='$dir". $file ."' onmouseover=\"popup('<img src=$bestand height=100 />','0')\"; onmouseout=\"stopthumb()\"> ".substr($file, 0, strlen($file) - (strlen($file) - strrpos($file, ".")))." </a> --<br>"));
        }
    }

    if (empty($handle))
    {

    
        echo "Nog geen bestanden geupload";
        
    }

    closedir($handle);
}


?>

<br>
<p>
<br>
</div>
</div>
<div style="clear: both;">&nbsp;</div>
</div>
<!-- end #content -->
<div id="sidebar">
<div id="logo">
<h4><a href="#">LECO</a></h4>
<h3><a href="#">Utrecht</a></h3>
</div>
<div id="menu">
<ul>
<li class="http://www.lecoutrecht.nl"><a href="http://www.lecoutrecht.nl/index.php">Welkom</a></li>
<li><a href="http://www.lecoutrecht.nl/algemenevoorwaarden.php">Algemene voorwaarden</a></li>
<li><a href="http://www.lecoutrecht.nl/offerte.php">Vrijblijvende offerte aanvraag</a></li>
<li><a href="http://www.lecoutrecht.nl/fotos_9.php">Foto's</a></li>
<li><a href="http://www.lecoutrecht.nl/gb/gbook.php">Gastenboek</a></li>
<li><a href="http://www.lecoutrecht.nl/contact.php">Contact</a></li>
</ul>
</div>
<ul>
</ul>
</div>
<!-- end #sidebar -->
<div style="clear: both;">&nbsp;</div>
</div>
</div>
</div>
<!-- end #page -->
</div>
<div id="footer">
 <center><a href="#">Ingeschreven bij de KVK te Utrecht onder nummer 54875412</a><br>
 <a href="#">BTW nummer: 8514.74.305.B01</a><br>
<br><a href="#">Copyright &copy; 2013 leco. All rights reserved.</a></center>
</div>
<!-- end #footer -->
</body>
</html>


Nu zou ik graag willen dat ik ipv de bestandsnaam een pagina krijgt met dus 8 fototjes en als je op een fototje zou klikken dat hij hem vergroot.

Misschien kunnen jullie mij hier wel mee helpen?

Ik hoor nogmaals graag van jullie.

ALvast bedankt!!

Martijn van H.

PS: ik weet het het is niet een al te beste site maar we moeten alles zelf eerst goed leren he ;)

Nogmaals DANK
 
PHP hulp

PHP hulp

22/12/2024 19:51:42
 
- Ariën  -
Beheerder

- Ariën -

27/10/2013 08:58:01
Quote Anchor link
Als ik goede tip mag geven. Ikzelf gebruik de uploadclass van verot.net.
Deze kan o.a heel simpel resizen en dergelijke. Misschien eens waard om ernaar te kijken?
 
Martijn van H

Martijn van H

28/10/2013 18:44:50
Quote Anchor link
Beste Aar,

Thanks voor je hulp.! Het ziet er goed uit.
Alleen nu moet ik dus nog een pagina hebben die de files uitleest.

Hier zit alleen ineen: upload.php en een index.html

De index.html en upload.php die is alleen om te uploaden.
Is hier dan ook een uitlees browse bij/voor?

ALvast bedankt!!

Martijn van H
 
- Ariën  -
Beheerder

- Ariën -

28/10/2013 18:59:25
Quote Anchor link
Heb je al eens gekeken naar: http://php.net/scandir ?
 
Jack Maessen

Jack Maessen

28/10/2013 20:38:26
Quote Anchor link
ik heb een tijdje geleden ook voor iemand zo'n thumbnailscript gemaakt, althans een bestaand script wat aangepast.
Er verschijnen nu 4 foto's op rij die je met een lightbox kunt openen. (zoals jij ook hebt).
Het enige waar ik me zelf nog het hoofd over breek is de volgorde van images tonen; de laatst geuploade moet het eerst getoond worden. Ik heb geknutseld met 'filemtime' maar krijg dat nog neit voor mekaar fatsoenlijk.
Enfin; bestand thumb.php maakt van elk image een thumbnail met widt 100 en plaatst die in de map "thumbs". Het originele images komt in de map "images" terecht, waar de map "thumbs' een onderdeel van is.

upload.php:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
<?php

error_reporting(E_ALL);

$resultaat[] = '';
echo implode(array_unique($resultaat));
if($_SERVER['REQUEST_METHOD'] == 'POST') {

//definities    
$i=0;

// functie image extension
function get_image_extension($name) {
   $name = strtolower($name);
     $i = strrpos($name,".");
     if (!$i) { return ""; }    
         $l = strlen($name) - $i;
             $extension = substr($name, $i+1,$l);
             return $extension;
    }


    // functie generate unique name
function random_name($length) {
   $characters = "abcdefghijklmnopqrstuvwxyz01234567890";
     $unique = "";    
    
     for ($i = 0; $i < $length; $i++) {
         $unique .= $characters[mt_rand(0, strlen($characters) - 1)];
     }

     return "image-".$unique;
}

    




  // check if field is empty
  if($_FILES['upload']['name'][$i] == "") {
        echo 'Inputveld is leeg. Browse eerst voor een image en klik dan op Upload Bestanden!<br /><br />';
    }
    
    else {
    
// upload flies
for($i=0; $i<count($_FILES['upload']['name']); $i++) {
    $maximum_size = $_POST['maxsize']; // maximum groote in bytes (5Mb)
    //temp filepath

    $filename = $_FILES['upload']['name'][$i];
  $tmpfilepath = $_FILES['upload']['tmp_name'][$i];
    $size=filesize($_FILES['upload']['tmp_name'][$i]);
    
        
    // check size of image
    if ($size > $maximum_size) {
    $resultaat[] = 'Bestand(en) is te groot!<br /><br />';
    
    }

    

    // check if file is an image
  $extension = get_image_extension($filename);

  if(($extension != "jpg") && ($extension != "jpeg") && ($extension != "gif") && ($extension != "png")) {
  
    $resultaat[] = 'Bestand(en) is geen image!<br /><br />';
  
    }

    
    
  //create filepath
  elseif ($tmpfilepath != ""){
    $image_random_name = random_name(15).".".$extension;
    $newfilepath = "images/" . $filename;
        
//Upload file naar definitive map
        
   if(move_uploaded_file($tmpfilepath, $newfilepath)) {
        
        //evt echo's
         $resultaat[] = 'Bestand(en) successvol geupload!<br /><br />';
     }

     else {
          $resultaat[] = 'Er is iets fout gegaan met uploaden! Probeer opnieuw';
          }      
  }
}

}

}
// eind ['REQUEST_METHOD']
echo implode(array_unique($resultaat));
?>

Klik op browse om bestanden te uploaden<br /><br />
<form action="" method="post" enctype="multipart/form-data">
<input type="hidden" name="maxsize" value="5000000"> <!-- maximaal 5 Mb grootte foto's -->
<input name="upload[]" type="file" multiple="multiple" />
<input type="submit" value="Upload Bestanden">
<br /><br />
<a href="thumb.php">Go to the gallery</a>
</body>
</html>


thumb.php:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
<?php

/* function:  generates thumbnail */
function make_thumb($src,$dest,$desired_width) {
    /* read the source image */
    $source_image = imagecreatefromjpeg($src);
    

    
    $width = imagesx($source_image);
    $height = imagesy($source_image);
    /* find the "desired height" of this thumbnail, relative to the desired width  */
    $desired_height = floor($height*($desired_width/$width));
    /* create a new, "virtual" image */
    $virtual_image = imagecreatetruecolor($desired_width,$desired_height);
    /* copy source image at a resized size */
    imagecopyresized($virtual_image,$source_image,0,0,0,0,$desired_width,$desired_height,$width,$height);
    /* create the physical thumbnail image to its destination */
    imagejpeg($virtual_image,$dest);
    
    
}



/** settings **/
$images_dir = './images/';
$thumbs_dir = './images/thumbs/';
$thumbs_width = 100;

$images_per_row = 4; // MAX 4 foto's per rij naast mekaar


/* function:  returns files from dir */


function get_files($images_dir,$exts = array('jpg')) {
    $files = array();

if($handle = opendir($images_dir)) {
    while(false !== ($file = readdir($handle))) {
        $extension = strtolower(get_file_extension($file));
        if($extension && in_array($extension,$exts)) {

            $files[$file] = filemtime($file);
        }
    }


    closedir($handle);
}



arsort ($files, $file);

return array_keys($files);

}


/* function:  returns a file's extension */
function get_file_extension($file_name) {
    return substr(strrchr($file_name,'.'),1);
}




/** fotogallerij maken **/
$image_files = get_files($images_dir);
if(count($image_files)) {
    $index = 0;
    foreach($image_files as $index=>$file) {
        $index++;
        $thumbnail_image = $thumbs_dir.$file;
        if(!file_exists($thumbnail_image)) {
            $extension = get_file_extension($thumbnail_image);
            if($extension) {
                make_thumb($images_dir.$file,$thumbnail_image,$thumbs_width);
            }
        }

        echo '<a href="'.$images_dir.$file.'" rel="lightbox"><img src="'.$thumbnail_image.'" style="margin-left: 10px" /></a>';
        if($index % $images_per_row == 0) { echo '<div class="clear"></div>'; }
    }

    echo '<div class="clear"></div>';
}

else {
    echo '<p>Er staan nog geen fotos op de pagina.</p>';
}


 ?>


Ik heb hem online gezet zodat je kunt zien hoe het er uit gaat zien. Misschien heb je hier wat aan. Maar zoals ik al zei, ik zit nog in de maag met die images volgorde...misschien weet iemand anders hier wel raad mee??

http://www.jackmaessen.nl/test/upload.php
Gewijzigd op 28/10/2013 20:40:49 door Jack Maessen
 
Martijn van H

Martijn van H

29/10/2013 04:14:11
Quote Anchor link
Beste Aar & Jack,

Bedankt voor jullie hulp. Ik heb ondertussen wat gevonden maar zit nu met een andere fout die ik heb.

Zie hiervoor de volgende link: http://www.phphulp.nl/php/forum/topic/wat-zie-ik-over-het-hoofd/92744/last/


Nogmaals bedankt voor jullie reactie


Martijn van H
 
PHP Noob

PHP Noob

29/10/2013 09:44:17
Quote Anchor link
Ik heb een tijdje geleden een aardig script gevonden. Werkt bij mij prima.
Code in je bestand plaatsen en verder hoef je alleen een mapje "fotoalbum" aan te maken.
(of een andere naam maar dit moet je dan ook even in het script aanpassen).
Het script zet de foto's niet automatisch in de juiste volgorde, maar dit kan je makkelijk aanpassen
door het naampje een oplopend cijfer mee te geven (bijv. 1badkamer, 2wc, etc.)

<code>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
<?php
$map
         = 'fotoalbum';
$afbeeldingen    = array();

$hoogte_klein     = 112;
$breedte_klein     = 150;

$hoogte_groot     = 400;
$breedte_groot     = 700;

$perpagina    = 12;

if(isset($_GET['album']) && !empty($_GET['album']))
{

    $tmp = explode('/',$_GET['album']);
    
    if($tmp[0] == $map)
    {

    $map = str_replace(array('.', '\\', ':'), '', $_GET['album']);
    }    
}


if(isset($_GET['paginanr']) && !empty($_GET['paginanr']) && ctype_digit($_GET['paginanr']))
{

    $paginanr = $_GET['paginanr'];
}
else{
    $paginanr = 1;
}


if(isset($_GET['afbeelding']) && !empty($_GET['afbeelding']))
{

    $afbeelding = $_GET['afbeelding'];
}
else{
    $afbeelding = NULL;
}

function
thumbnail($afbeelding, $type)
{

    
    $map         = $afbeelding['dirname'];
    $bestandsnaam     = $afbeelding['basename'];
    
    list($type, $hoogte, $breedte) = $type;
    list($breedte_origineel, $hoogte_origineel, $extensie) = getimagesize($map.'/'.$bestandsnaam);
    
    if(!is_dir($map.'/thumbs/'))
    {

    mkdir($map.'/thumbs/', 0777);
    chmod($map.'/thumbs/', 0777);
    }

    
    if (($breedte_origineel < $hoogte_origineel) && ($breedte > $hoogte))
    {

    $breedte = ($hoogte / $hoogte_origineel) * $breedte_origineel;
    }
else{
    $hoogte = ($breedte / $breedte_origineel) * $hoogte_origineel;
    }


    $afbeelding = imagecreatetruecolor($breedte, $hoogte);

    switch($extensie)
    {
    case
1:
        //gif
        $afbeelding_origineel = imagecreatefromgif($map.'/'.$bestandsnaam);
        imagecopyresampled($afbeelding, $afbeelding_origineel, 0, 0, 0, 0, $breedte, $hoogte, $breedte_origineel, $hoogte_origineel);
        imagegif($afbeelding, $map.'/thumbs/'.$type.'_'.$bestandsnaam);
    break;
    case
2:
        //jpg
        $afbeelding_origineel = imagecreatefromjpeg($map.'/'.$bestandsnaam);
        imagecopyresampled($afbeelding, $afbeelding_origineel, 0, 0, 0, 0, $breedte, $hoogte, $breedte_origineel, $hoogte_origineel);
        imagejpeg($afbeelding, $map.'/thumbs/'.$type.'_'.$bestandsnaam, 80);
    break;
    case
3:
        //png
        $afbeelding_origineel = imagecreatefrompng($map.'/'.$bestandsnaam);
        
        $background = imagecolorallocate($afbeelding, 0, 0, 0);
        imagecolortransparent($afbeelding, $background); // make the new temp image all transparent
        imagealphablending($afbeelding, false); // turn off the alpha blending to keep the alpha channel
        imagesavealpha($afbeelding, true);
        imagecopyresampled($afbeelding, $afbeelding_origineel, 0, 0, 0, 0, $breedte, $hoogte, $breedte_origineel, $hoogte_origineel);
        imagepng($afbeelding, $map.'/thumbs/'.$type.'_'.$bestandsnaam);
    break;
    }

    
    chmod($map.'/thumbs/'.$type.'_'.$bestandsnaam, 0777);
    return TRUE;
}


$tmp = NULL;
foreach(explode('/',$map) as $tmp2)
{
    
    echo ' <a href="?pagina=fotoalbum&amp;album='.$tmp.$tmp2.'">'.ucfirst($tmp2).'</a> ';
    $tmp = $tmp.$tmp2.'/';
}


echo '<br><br>'.PHP_EOL;

if(!$bestanden = glob($map.'/*.*'))
{

    $bestanden = array();
}


foreach($bestanden as $bestand)
{

    $gegevens     = getimagesize($bestand);
    $extensie     = $gegevens['mime'];

    if($extensie == 'image/jpeg' || $extensie == 'image/gif' || $extensie == 'image/png'|| $extensie == 'image/jpg')
    {

    $afbeeldingen[] = $bestand;
    }    
}


$aantalfotos = count($afbeeldingen);

if(isset($afbeelding))
{

    foreach($afbeeldingen as $id => $naam)
    {

    if(basename($naam) == $afbeelding)
    {

        $fotonr = $id;
    }
    }

    
    if(isset($fotonr))
    {

    $afbeelding = pathinfo($afbeeldingen[$fotonr]);
    
    if($fotonr > 0)
    {

        $vorige_afbeelding     = pathinfo($afbeeldingen[$fotonr-1]);
        
        echo '<a href="?pagina=fotoalbum&amp;album='.$map.'&amp;afbeelding='.$vorige_afbeelding['basename'].'" title="Ga naar foto '.$vorige_afbeelding['basename'].'">&lt;&lt; Vorige</a>';
    }
else{
        echo '&lt;&lt; Vorige';
    }

    
    echo '&nbsp;&nbsp;&nbsp; Foto '.($fotonr +1).' van '.$aantalfotos.' &nbsp;&nbsp;&nbsp;';
    
    if($fotonr < $aantalfotos -1)
    {

        $volgende_afbeelding = pathinfo($afbeeldingen[$fotonr+1]);
        
        echo '<a href="?pagina=fotoalbum&amp;album='.$map.'&amp;afbeelding='.$volgende_afbeelding['basename'].'" title="Ga naar foto '.$volgende_afbeelding['basename'].'">Volgende &gt;&gt;</a><br>';
    }
else{
        echo 'Volgende &gt;&gt;<br>'.PHP_EOL;
    }

    
    if(!file_exists($afbeelding['dirname'].'/thumbs/groot_'.$afbeelding['basename']))
    {

        if(thumbnail($afbeelding, array('groot', $hoogte_groot, $breedte_groot)))
        {

        echo '<a href="'.$afbeelding['dirname'].'/'.$afbeelding['basename'].'" target="_BLANK"><img src="'.$afbeelding['dirname'].'/thumbs/groot_'.$afbeelding['basename'].'" title="'.$afbeelding['basename'].'" alt="'.$afbeelding['basename'].'" class="thumbs"></a>'.PHP_EOL;
        }
    }
else{
        echo '<a href="'.$afbeelding['dirname'].'/'.$afbeelding['basename'].'" target="_BLANK"><img src="'.$afbeelding['dirname'].'/thumbs/groot_'.$afbeelding['basename'].'" title="'.$afbeelding['basename'].'" alt="'.$afbeelding['basename'].'" class="thumbs"></a>'.PHP_EOL;
    }
    }
else{
    echo '<p>Sorry, deze foto bestaat niet!</p>';
    }
}
else{
    
    if(!$mappen = glob($map.'/*', GLOB_ONLYDIR))
    {

    $mappen = array();
    }

    
    foreach($mappen as $album)
    {

    if(basename($album) != 'thumbs')
    {

        echo '<a href="?pagina=fotoalbum&album='.$album.'">'.ucfirst(basename($album)).'</a><br>'.PHP_EOL;
    }
    }


    if($aantalfotos > $perpagina)
    {

    if ($paginanr > 1)
    {

        echo '<a href="?pagina=fotoalbum&amp;album='.$map.'&amp;paginanr='.($paginanr - 1).'" title="Ga naar pagina '.($paginanr - 1).'">&lt;&lt; Vorige</a>';
    }
else{
        echo '&lt;&lt; Vorige';
    }

    
    echo '&nbsp;&nbsp;&nbsp; Pagina '.$paginanr.' van '.ceil($aantalfotos/$perpagina).' &nbsp;&nbsp;&nbsp;';
    
    if ($paginanr < ceil(($aantalfotos)/$perpagina))
    {

        echo '<a href="?pagina=fotoalbum&amp;album='.$map.'&amp;paginanr='.($paginanr + 1).'" title="Ga naar pagina '.($paginanr + 1).'">Volgende &gt;&gt;</a><br>';
    }
else{
        echo 'Volgende &gt;&gt;<br>'.PHP_EOL;
    }
    }

    
    for($fotonr = (($paginanr -1) * $perpagina); $fotonr <= ((($paginanr -1) * $perpagina) + ($perpagina - 1)) && $fotonr < count($bestanden); $fotonr += 1)
    {

    $afbeelding = pathinfo($afbeeldingen[$fotonr]);
    
    if(!file_exists($afbeelding['dirname'].'/thumbs/klein_'.$afbeelding['basename']))
    {

        if(thumbnail($afbeelding, array('klein', $hoogte_klein, $breedte_klein)))
        {

        echo '<a href="?pagina=fotoalbum&amp;album='.$map.'&amp;afbeelding='.$afbeelding['basename'].'"><img src="'.$afbeelding['dirname'].'/thumbs/klein_'.$afbeelding['basename'].'" title="'.$afbeelding['basename'].'" alt="'.$afbeelding['basename'].'" class="thumbs"></a>'.PHP_EOL;
        }
    }
else{
        echo '<a href="?pagina=fotoalbum&amp;album='.$map.'&amp;afbeelding='.$afbeelding['basename'].'"><img src="'.$afbeelding['dirname'].'/thumbs/klein_'.$afbeelding['basename'].'" title="'.$afbeelding['basename'].'" alt="'.$afbeelding['basename'].'" class="thumbs"></a>'.PHP_EOL;
    }
    }

}

?>

</code>
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.