Toon posts:

Probleem met fotoalbum

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

Verwijderd

Topicstarter
Hoi,

Ik ben met een fotoalbum bezig die ik geplukt heb van http://www.phpfreakz.nl/library.php?sid=24344

de code is als volgt.
code:
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
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Fotoalbum</title>
<style type="text/css" media="all">
a.tekst:link, a.tekst:visited {
    color:#000000;
    border-bottom:0px;
    text-decoration:none;
}
a.tekst:hover {
    color:#000000;
    border-bottom:1px #000000 dotted;
    text-decoration:none;
}

table.albums {
    width:500px;
    text-align:left;
}
table.plaatje {
    background-color:#FFFFFF;
    border:#000000 1px solid;
    width:136px;
    height:131px;
}
td.plaatje {
    padding-top:5px;
}
td.plaatje_tekst {
    padding-bottom:6px;
}
img.plaatje {
    border:1px #000000 solid;
    height:94px;
    width:125px;
}
table.menu {
    background-color:#FFFFFF;
    border:#000000 1px solid;
    padding-top:3px;
    padding-bottom:3px;
    width:500px;
}
td.menu {
    width:500px;
}
table.inner_menu {
    background-color:#FFFFFF;
    border:#000000 1px solid;
    padding:3px;
    width:500px;
}
table.thumbnails {
    text-align:center;
    width:500px;
}
</style>
</head>

<body>
<?php
// Map waar de albums instaan
$fotoMap = "fotos";
// Bestanden die niet in het array met alle foto's toegevoegd moeten worden
$nietToevoegen = array(".","..","thumbs","Thumbs.db");
// Toegestane MIME-Types
$mimeTypes = array("image/bmp","image/gif","image/jpeg");

if(isset($_GET['album']) && (str_replace(".","",$_GET['album']) == $_GET['album'])){
    if(isset($_GET['fotonr']) && (str_replace(".","",$_GET['fotonr']) == $_GET['fotonr'])){
        if(is_numeric($_GET['fotonr'])){
            $handle = opendir($fotoMap . "/" . $_GET['album']);
            while (false !== ($bestand = readdir($handle))) {
                if(!in_array($bestand,$nietToevoegen)){
                    if(in_array(mime_content_type($fotoMap . "/" . $_GET['album'] . "/" . $bestand),$mimeTypes)){
                        $fotos[] = $bestand;
                    }
                }
            }   
            closedir($handle);
            sort($fotos);
            $grootteArray = count($fotos) - 1;
            if(($_GET['fotonr'] < 0) || ($_GET['fotonr'] > $grootteArray)){
                echo "Foto bestaat niet.";
            } else {
                if(is_numeric($_GET['fotonr']) && ($_GET['fotonr'] > 0)){
                    $vorigeFoto = $_GET['fotonr'] - 1;
                    $vorigeLink = "<a href=\"?album=" . $_GET['album'] . "&amp;fotonr=" . $vorigeFoto . "\" class=\"tekst\">vorige</a>";
                } else {
                    $vorigeFoto = 0;
                    $vorigeLink = "&nbsp;";
                }
                if(is_numeric($_GET['fotonr']) && ($_GET['fotonr'] < $grootteArray)){
                    $volgendeFoto = $_GET['fotonr'] + 1;
                    $volgendeLink = "<a href=\"?album=" . $_GET['album'] . "&amp;fotonr=" . $volgendeFoto . "\" class=\"tekst\">volgende</a>";
                } else {
                    $volgendeFoto = 0;
                    $volgendeLink = "&nbsp;";
                }
                echo "    <table align=\"center\" cellpadding=\"0\" cellspacing=\"0\" class=\"inner_menu\">\n     <tr>\n      <td align=\"left\" valign=\"top\" width=\"25%\">" . $vorigeLink . "</td><td align=\"center\" valign=\"top\" width=\"50%\"><a href=\"?album=" . $_GET['album'] . "\" class=\"tekst\">overzicht</a></td><td align=\"right\" valign=\"top\" width=\"25%\">" . $volgendeLink . "</td>\n     </tr>\n    </table>\n    <br />\n";
                echo "    <table align=\"center\" cellpadding=\"0\" cellspacing=\"0\" class=\"inner_menu\">\n     <tr>\n      <td align=\"center\" valign=\"top\"><img src=\"fotos/" . $_GET['album'] . "/" . $fotos[$_GET['fotonr']] . "\" alt=\"\" width=\"400\" /></td>\n     </tr>\n    </table>\n    <br />\n";
                echo "    <table align=\"center\" cellpadding=\"0\" cellspacing=\"0\" class=\"inner_menu\">\n     <tr>\n      <td align=\"left\" valign=\"top\" width=\"25%\">" . $vorigeLink . "</td><td align=\"center\" valign=\"top\" width=\"50%\"><a href=\"?album=" . $_GET['album'] . "\" class=\"tekst\">overzicht</a></td><td align=\"right\" valign=\"top\" width=\"25%\">" . $volgendeLink . "</td>\n     </tr>\n    </table>\n";
            }
        } else {
                echo "Foto moet een nummer zijn.";
        }
    } else {
        // Aantal kolommen voor de thumbnail foto's
        $kolommen = 3;
        // Zet totaal op 0 zodat lay-out kloppend blijft
        $totaal = 0;
       
        function addrow($content = "&nbsp;"){    //Je MAG content parameter opgeven, als deze NIET opgegeven is dan wordt deze gevuld met de string: &nbsp;
            return "  <td align=\"center\">" . $content . "</td>\n";
        }

        echo "<table align=\"center\" cellpadding=\"0\" cellspacing=\"0\" class=\"menu\">\n <tr>\n  <td align=\"center\" valign=\"top\" class=\"menu\">\n   <a href=\"index.php\" class=\"tekst\">overzicht</a>\n  </td>\n </tr>\n</table>\n";
        echo "<table align=\"center\" class=\"thumbnails\">\n <tr>\n";
        $handle = opendir($fotoMap . "/" . $_GET['album']);
        while (false !== ($bestand = readdir($handle))) {
            if(!in_array($bestand,$nietToevoegen)){
                if(in_array(mime_content_type($fotoMap . "/" . $_GET['album'] . "/" . $bestand),$mimeTypes)){
                    $thumbFotos[] = $bestand;
                }
            }
        }   
        closedir($handle);   

        sort($thumbFotos);
        $teller = -1;
        foreach ($thumbFotos as $bestand) {       
            $teller++;       
            if(($totaal % $kolommen == 0) && ($totaal != 0)){
                echo " </tr>\n <tr>\n";
            }
               
            echo addrow("<table cellpadding=\"0\" cellspacing=\"0\" class=\"plaatje\"><tr><td align=\"center\" valign=\"top\" class=\"plaatje\"><a class=\"fotos\" href=\"?album=" . $_GET['album'] . "&fotonr=" . $teller . "\"><img src=\"fotos/". $_GET['album'] . "/thumbs/" . $bestand . "\" alt=\"\" class=\"plaatje\" /></a></td></tr><tr><td align=\"center\" valign=\"top\" class=\"plaatje_tekst\"><a href=\"?album=" . $_GET['album'] . "&fotonr=" . $teller . "\" class=\"tekst\">" . $bestand . "</a></a></td></tr></table>");
            $totaal++;
        }
           
        while($totaal % $kolommen != 0){
            echo addrow();
            $totaal++;
        }
       
        echo " </tr>\n</table>\n";
        echo "<table align=\"center\" cellpadding=\"0\" cellspacing=\"0\" class=\"menu\">\n <tr>\n  <td align=\"center\" valign=\"top\" class=\"menu\">\n   <a href=\"index.php\" class=\"tekst\">overzicht</a>\n  </td>\n </tr>\n</table>\n";
    }
} else {   
    // Aantal kolommen voor albums mappen
    $kolommen = 3;
    // Zet totaal op 0 zodat lay-out kloppend blijft
    $totaal = 0;
   
    function addrow($content = "&nbsp;"){    //Je MAG content parameter opgeven, als deze NIET opgegeven is dan wordt deze gevuld met de string: &nbsp;
            return "  <td align=\"center\">" . $content . "</td>\n";
    }

    echo "<table align=\"center\" class=\"albums\">\n <tr>\n";   
    $handle = opendir($fotoMap);
        while (false !== ($bestand = readdir($handle))) {
            if(!in_array($bestand,$nietToevoegen)){
                $albums[] = $bestand;
            }
        }   
    closedir($handle);   
   
    $teller = 0;
    sort($albums);
    foreach ($albums as $bestand) {       
        if (file_exists($fotoMap . "/" . $bestand . "/thumbs")) {
            $handle2 = opendir($fotoMap . "/" . $bestand . "/thumbs/");
            while (false !== ($bestand2 = readdir($handle2))) {
                if(!in_array($bestand2,$nietToevoegen)){
                    $teller++;
                    $thumbFotos[$teller] = $bestand2;
                }
            }   
        closedir($handle2);
               
        if(($totaal % $kolommen == 0) && ($totaal != 0)){
            echo " </tr>\n <tr>\n";
        }
               
        echo addrow("<table cellpadding=\"0\" cellspacing=\"0\" class=\"plaatje\"><tr><td align=\"center\" valign=\"top\" class=\"plaatje\"><a href=\"?album=" . $bestand . "\"><img src=\"fotos/" . $bestand . "/thumbs/" . $thumbFotos[$teller] . "\" alt=\"\" class=\"plaatje\" /></a></td></tr><tr><td align=\"center\" valign=\"top\" class=\"plaatje_tekst\"><a href=\"?album=" . $bestand . "\" class=\"tekst\">" . $bestand . "</a></a></td></tr></table>");
        $totaal++;           
        }
    }
       
    while($totaal % $kolommen != 0){
        echo addrow();
        $totaal++;
    }   

    echo " </tr>\n</table>\n";
}
?>
</body>
</html>


Nu staat alles op http://londemanmp.no-ip.info/web/foto/ maar alleen de begin plaatje is te zien.

de map curacao is aangemaakt in de hoofdmap fotos en in de map curacao is weer een map met thumbs met de naam : IMG_0106.jpg.

Wat doe ik fout ??

  • BasieP
  • Registratie: Oktober 2000
  • Laatst online: 19-10 08:18
je post een mega lap code, geeft daarbij niet aan wat er PRECIES mis gaat, wat je al geprobeerd hebt, en wat het resultaat daarvan was.
verder is een tag in de topic titel wel leuk

style sheets vallen niet onder 'relevant' als het om php gaat
verder heb je natuurlijk in de faq gelezen dat het fixen van andermans scripts (die je van inet geplukt hebt) niet echt de bedoeling is.
Als het iets is dat je zelf gemaakt heb dan helpen we graag, maar anders zal je misschien wel moeten vragen bij de persoon die het script gemaakt heeft (dus phpfreakz ofzo)

[ Voor 28% gewijzigd door BasieP op 30-12-2006 23:12 ]

This message was sent on 100% recyclable electrons.


  • André
  • Registratie: Maart 2002
  • Laatst online: 14:48

André

Analytics dude

Wat BasieP al zegt: je ript een script en verwacht dat wij hem even gaan fixen. Dat is natuurlijk niet de bedoeling, mail de maker of probeer het zelf. En als je er echt niet uit komt kun je de relevante code hier plaatsen, en niet de hele lap.

Dit topic is gesloten.