Scandir en maak tabel
Ik heb het geprobeerd te combineren met dit script maar dat liep uit op een constant doorgaande loop:
http://www.sitemasters.be/?pagina=tutorials/tutorials&cat=4&id=317
Mijn eigen stukje:
Code (php)
<table width="100%"class="table"><tr>
<td width="100%" colspan="5" style="border-bottom:1px solid #D3D3D3"><b>Avatars</b></td>
Code (php)
</table>
Wie wil mij alsjeblieft helpen?
Alvast bedankt!
ps. Kan iemand mij uitleggen hoe ik mijn array gesorteerd krijg, netjes op alfabet en van 1 to 9 inplaats van door elkaar?
Wie kan mij helpen met het tabel probleem?
modulo moet gaan werken.
Ik denk dat je met Heb nu dit maar werkt niet vreemd genoeg:
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
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
<?
if(!function_exists ("scandir")){
function scandir ($dir){
$open = opendir ($dir);
$bestanden = array ();
while ($read = readdir ($open)) {
if($read != '.' && $read != '..' && $read != 'thumbs.db' && $read != 'Thumbs.db'){
$bestanden[] = $read;
}
}
sort ($bestanden);
return $bestanden;
}
}
$dir = scandir("./downloads/avatars");
// Tabel beginnen
echo "<table width=\"100%\"class=\"table\">\n";
echo "\t<tr>\n";
echo "\t\t<td width=\"100%\" colspan=\"3\" style=\"border-bottom:1px solid #D3D3D3\"><b>Avatars</b></td>\n";
// De teller initialiseren
$i = 0;
// Door de afbeeldingen loopen
foreach( $dir as $dirs )
{
// Indien $i modulo 3 gelijk is aan nul de tabelrij eindigen en een nieuwe beginnen
// Dit geldt enkel wanneer $i groter is dan nul
if( ( $i % 3 ) == 0 and ( $i != 0 ) )
{
echo "\t</tr>\n";
echo "\t<tr>\n";
}
// Afbeelding weergeven in een tabelcel
echo "\t\t<td width=\"50%\"><img class=\"border\" src=\"downloads/avatars/".$dirs."\"></td><td width=\"50%\">Avatar $i</td>\n";
// Teller met één verhogen
$i++;
}
// Lege cellen opvullen:
if ( ( $i % 3 ) != 0 )
{
// Herhaaldelijk tabelcellen toevoegen.
echo str_repeat( "\t\t<td> </td>\n", ( 3 - ( $i % 3 ) ) );
}
// Tabel afmaken
echo "\t</tr>\n";
echo "</table>";
?>
if(!function_exists ("scandir")){
function scandir ($dir){
$open = opendir ($dir);
$bestanden = array ();
while ($read = readdir ($open)) {
if($read != '.' && $read != '..' && $read != 'thumbs.db' && $read != 'Thumbs.db'){
$bestanden[] = $read;
}
}
sort ($bestanden);
return $bestanden;
}
}
$dir = scandir("./downloads/avatars");
// Tabel beginnen
echo "<table width=\"100%\"class=\"table\">\n";
echo "\t<tr>\n";
echo "\t\t<td width=\"100%\" colspan=\"3\" style=\"border-bottom:1px solid #D3D3D3\"><b>Avatars</b></td>\n";
// De teller initialiseren
$i = 0;
// Door de afbeeldingen loopen
foreach( $dir as $dirs )
{
// Indien $i modulo 3 gelijk is aan nul de tabelrij eindigen en een nieuwe beginnen
// Dit geldt enkel wanneer $i groter is dan nul
if( ( $i % 3 ) == 0 and ( $i != 0 ) )
{
echo "\t</tr>\n";
echo "\t<tr>\n";
}
// Afbeelding weergeven in een tabelcel
echo "\t\t<td width=\"50%\"><img class=\"border\" src=\"downloads/avatars/".$dirs."\"></td><td width=\"50%\">Avatar $i</td>\n";
// Teller met één verhogen
$i++;
}
// Lege cellen opvullen:
if ( ( $i % 3 ) != 0 )
{
// Herhaaldelijk tabelcellen toevoegen.
echo str_repeat( "\t\t<td> </td>\n", ( 3 - ( $i % 3 ) ) );
}
// Tabel afmaken
echo "\t</tr>\n";
echo "</table>";
?>
Code (php)
Dit moet werken, denk ik ;)
Ik denk dat dit je wel gaat helpen
$i % 3 == 0, Als je die 3 veranderd naar 5 dan is het om de 5 regels.
Gewijzigd op 01/01/1970 01:00:00 door Han eev
Bedankt allemaal probleem opgelost!