Toon posts:

[PHP] Plaatjes uit map weergeven in tabel

Pagina: 1
Acties:
  • 52 views sinds 30-01-2008

Verwijderd

Topicstarter
Beste mensen,

ik zit met het volgende probleem.

Ik wil graag de plaatjes uit een map netjes weergeven in een tabel
de map die uitgelezen word bestaat uit ongeveer 80 plaatjes en die wil ik per 10 in een row weergeven maar ik kom er niet uit.

bekijk mijn code maar eens en geef je commentaar!
:)

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
<?php 

// Benodigde variabelen 
$image_types = array("jpg","gif"); 
$plaatjes_reeks = ""; 
$mapnaam = "../img/klein/"; 
$map = opendir(".{$mapnaam}"); 

echo "<table width=\"750\"  border=\"1\" cellspacing=\"0\" cellpadding=\"0\">";
echo "<tr>";
$i=0;
$num=10;
while ($i < $num){
// Map inhoud ophalen en tonen 
while (false!==($bestand = readdir($map))) { 
    if ($bestand != "." && $bestand != "..") { 
        // Wat is de extensie? 
        $ext = explode('.',$bestand); 
        $extl = sizeof($ext) - 1; 
        $ext = strtolower($ext[$extl]); 

        if ( in_array($ext,$image_types) ) 
        { 
            // Plaatje 
            print "<td>";
            print "[img]\"{$mapnaam}{$bestand}\"[/img]<br />\n";
            print "</td>";
            $i++; 
        } 
    } 
} 
}
echo "</tr>";

echo "<tr>";
$i=11;
$num=20;
while ($i < $num){
// Map inhoud ophalen en tonen 
while (false!==($bestand = readdir($map))) { 
    if ($bestand != "." && $bestand != "..") { 
        // Wat is de extensie? 
        $ext = explode('.',$bestand); 
        $extl = sizeof($ext) - 1; 
        $ext = strtolower($ext[$extl]); 

        if ( in_array($ext,$image_types) ) 
        { 
            // Plaatje 
            print "<td>";
            print "[img]\"{$mapnaam}{$bestand}\"[/img]<br />\n";
            print "</td>";
            $i++; 
        } 
    } 
} 
}
echo "</tr>";
closedir($map); 
?> 

  • André
  • Registratie: Maart 2002
  • Laatst online: 08-04 16:23

André

Analytics dude

Ga je nu voor elke row weer een nieuwe while opstarten? Wat dacht je van 2 geneste lusjes met een for constructie?

Verwijderd

Topicstarter
Het probleem is dat ik hierin code gebruik die ik ergens anders vandaan heb en gezien het feit dat ik nog niet zoveel ervaring heb met PHP dat probeer ik er het beste van te maken, maar echt soepel gaat dat nog niet.

maar 2 whiles in elkaar ziet er niet echt logisch uit nee

[ Voor 13% gewijzigd door Verwijderd op 08-02-2006 15:44 ]


Verwijderd

Topicstarter
en hoe ziet 2 geneste lusjes met een for constructie er uit?

ik kan dat niet zo eventjes maken.

Verwijderd

je kunt een 2e teller in de while loop starten. Als die teller op 10 staat echo je de html die de table row afsluit en weer een nieuwe begint. Reset de teller zodat ie weer opnieuw telt.

bijvoorbeeld.

Verwijderd

PHP:
1
2
3
4
5
6
$ncols = 10;
while (get_picture()...) {
  for ($i = 0; $i <$ncols; $i++)
    // beeld plaatje af
  }
}

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 17:00

Janoz

Moderator Devschuur®

!litemod

Ten eerste is het niet de bedoeling je topic binnen 24u te kicken, daarnaast leveren we ook geen support op scripts van derden.

Blijkbaar is dit probleem nog een beetje te hoog gegrepen. Begin met iets simpelers om op die manier php en programmeren in het algemeen onder de knie te krijgen. Dit topic kan niets meer worden dan een bij het handje neem topic waarbij iedereen code gaat voorkauwen. Dat is in Programming & Webscripting niet de bedoeling en daarom gaat dit topic op slot.

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'

Pagina: 1

Dit topic is gesloten.