Afbeelding uit map halen, netjes in table plaatsen

Door Jelle Posthuma, 22 jaar geleden, 10.158x bekeken

Door middel van dit script kan je afbeeldingen uit een map weergeven op deze manier:

[ ] [ ] [ ]
[ ] [ ] [ ]
[ ] [ ] [ ]
[ ] [ ] [ ]
[ ] [ ] [ ]

Netjes onder elkaar in een table.

Het is een simpel script, ik ben dan ook geen gevorden scripter.
Voorbeeld vind je op de voorbeeld link bovenaan.

Met dank aan: Jason de Ridder

Voorbeeld: http://www.jvsjmedia.nl/privee/emoticonexample/

Gesponsorde koppelingen

PHP script bestanden

  1. afbeelding-uit-map-halen-netjes-in-table-plaatsen

 

Er zijn 21 reacties op 'Afbeelding uit map halen netjes in table plaatsen'

PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Jelle Posthuma
Jelle Posthuma
22 jaar geleden
 
0 +1 -0 -1
Opbouwend kritiek en suggesties voor verbetering van de code zijn altijd goed.
Luke Banning
Luke Banning
22 jaar geleden
 
0 +1 -0 -1
Is wel handig.
Lay-out maakt het erg netjes/duidelijk. En werkt goed
Jelle Posthuma
Jelle Posthuma
22 jaar geleden
 
0 +1 -0 -1
Thanks.
De layout is erg simpel, maar geeft gelijk even een voorbeeld dat het gewoon een simpele table is die je zo kan uitbouwen als je zelf wil.
Handig als je bijvoorbeeld een gastenboek maakt met klikbare smileys.

(Was dit ook van plan te maken maar weer niet hoe ik de smileys klikbaar maak zodat de smiley op de plek van de cursor wordt geplaatst.)
Vincent
Vincent
22 jaar geleden
 
0 +1 -0 -1
Meest interessante vind ik de eenvoudige oplossing om na 3 afbeeldingen een nieuwe rij te beginnen. Simpel, maar effectief en zal ik in de loop der tijd vast nog eens goed kunnen gebruiken.
Remco van Arkelen
Remco van Arkelen
22 jaar geleden
 
0 +1 -0 -1
Leuk script, 1 kleine tip: Probeer jezelf aan te leren om de configuratie-gegevens te scheiden van de rest van je programma, je hebt er nu voor gekozen om 3 kolommen te maken, die 3 staat dus "hard" in de code, het zou netter zijn om deze zgn. "magic cookies" als variabele / constante te declareren. Hetzelfde geldt voor het array met toegestane extensies.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php
// Aantal kolommen
define( 'COLS', 3 );

// Toegestane extensies
$image_types = array("jpg","gif","bmp","png","jpeg");

// Rest van de code
?>
Harmen
Harmen
22 jaar geleden
 
0 +1 -0 -1
Grappig met die tabellen gedaan zeg!
Verder goed te gebruiken bij een CMS oid
Han eev
Han eev
22 jaar geleden
 
0 +1 -0 -1
Is wel leuk :)
Maar bekijk de code eens...
<tr><tr> Enz... en dan sluit het telkens weer af, dat is niet helemaal een tabel opbouw
het komt door dit
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?Php
if($count%3 == 0) {
                               $plaatjes_reeks .= '</tr>';
                        }
else{
                            echo '<tr>';
                        }

// Dit kan beter, dit zijn ->
if($count%3 == 0) {
         $plaatjes_reeks .= '</tr><tr>';
}

// Nu ziet de code er beter uit en het is nog korter ook
?>
Allan de Bruin
Allan de Bruin
22 jaar geleden
 
0 +1 -0 -1
geweldig dit script! !! Hoe kan je die plaatjes ook een waarde geven dat ze bijvoorbeeld 100 x 100 zijn?
Niek Kasius
Niek Kasius
21 jaar geleden
 
0 +1 -0 -1
krijg alleen dit op mijn scherm:

Emoticons:
dit staat wel in de table want ik zie er wel een zwarte rand omheen
Warning: opendir(./emoticon) [function.opendir]: failed to open dir: Invalid argument in C:\wamp\www\emoticons.php on line 15

Warning: readdir(): supplied argument is not a valid Directory resource in C:\wamp\www\emoticons.php on line 17

Warning: closedir(): supplied argument is not a valid Directory resource in C:\wamp\www\emoticons.php on line 34
Nick
Nick
21 jaar geleden
 
0 +1 -0 -1
Niek, je moet wel eerst even een map emoticon aanmaken.
Rients
rients
21 jaar geleden
 
0 +1 -0 -1
Ik zou het wel handig vinden als je de volgorde van de foto kon beinvloeden, maar hoe pas ik deze constructie zodanig aan dat ie de fotos bijvoorbeeld alfabetisch sorteert ?
J orii
J orii
21 jaar geleden
 
0 +1 -0 -1
Het werkt perfect :D
Erwin Oudshoorn
Erwin Oudshoorn
21 jaar geleden
 
0 +1 -0 -1
Hoe geef ik er een limiet aan dat hij er bijvoorbeeld maximaal 9 mag uithalen ?
Rowan
rowan
21 jaar geleden
 
0 +1 -0 -1
zelfde vraag als Allan de Bruin, hoe kun je een waarde erinzetten, zodat je het ook voor foto's kan gebruiken, en misschien als je er op klikt dat hij op ware grootte wordt weergegeven?.

in ieder geval een mooi script, ga hem zeker gebruiken
Ferdi R
Ferdi R
21 jaar geleden
 
0 +1 -0 -1
Miss handig om deze script te updaten met een upload script.
Uploaden in categorien en in elk cat image's met een pagenummering script.
12 image's op een pagina.
Anne
anne
20 jaar geleden
 
0 +1 -0 -1
Scriptje werkt goed! Tnx!
Eveline
Eveline
20 jaar geleden
 
0 +1 -0 -1
Ik begrijp dat niek58 continu die error krijgt hoor, kreeg net dezelfde error.
Hoe het komt dat dit script toch kan werken bij anderen weet ik niet.
$map = opendir(".{$mapnaam}");
Die punt moet weg anders opent hij een directory die begint met een punt en dat bestaat natuurlijk niet.
Alé bij mij is het toch zo, puntje weggedaan en het werkt perfect.
En je gebruipt toch / slashkes voor mappen op het internet en niet \ gelijk in dos??
Die twee wijzigingen heb ik uitgevoerd en toen werkte het perfect ook voor mij, dit was net wat ik zocht dus ben er heel blij mee, bedankt!
Eveline
Eveline
20 jaar geleden
 
0 +1 -0 -1
Allan als je gewoon width = 100 en height = 100 achteraan toevoegd aan die img tag dan kan je toch de grootte instellen?
En als je gewoon een link plaatst naar de exacte locatie van de foto krijg je hem toch int groot?
Stephan
Stephan
18 jaar geleden
 
0 +1 -0 -1
zou je dit ook kunne doen dat je die image extensies veranderd door audio extensies en dan allemaal muziek laten tonen ? en door middel van klik kan laten spelen??
Danny A-noniem
Danny A-noniem
18 jaar geleden
 
0 +1 -0 -1
oke maar hoe krijg je nu die foto's op 100*100 dan.
iemand een stukje?
PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Danny A-noniem
Danny A-noniem
18 jaar geleden
 
0 +1 -0 -1
al opgelost
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
<?php
echo '
<b>foto: </b>
<table cellspacing="0" cellpadding="0" style="border:solid 2px #000000;">
    <tr>
        <td>
            <table cellspacing="0" cellpadding="5" width="100%">'
;
            
            $image_types = array("jpg","gif","bmp","png","jpeg");
            $plaatjes_reeks = "";
            $mapnaam = "/foto";
            if ( ereg('..',$mapnaam) || ereg('//',$mapnaam) ){
                $mapnaam = "/foto";
            }

            $map = opendir(".{$mapnaam}");
            $count = 0;
            while (false!==($bestand = readdir($map))) {
                if ($bestand != "." && $bestand != "..") {
                    $ext = explode('.',$bestand);
                    $extl = sizeof($ext) - 1;
                    $ext = strtolower($ext[$extl]);
                    if ( in_array($ext,$image_types) ){
                    if($count%3 == 0) {
                        $plaatjes_reeks .= '</tr><tr>';
                    }

                        $plaatjes_reeks .= "<td><img height=200 src= \"foto/" . $bestand . "\" />
</td>"
;
                        $count++;
                    }
                }
            }
                                                
            if ( $plaatjes_reeks != "" ){
                echo ($plaatjes_reeks);
            }

            closedir($map);
            
            echo '
            </table>
        </td>
    </tr>
</table>'
;
?>

Om te reageren heb je een account nodig en je moet ingelogd zijn.

Inhoudsopgave

  1. afbeelding-uit-map-halen-netjes-in-table-plaatsen

Labels

  • Geen tags toegevoegd.

Navigatie

 
 

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.