anoniem Geplaatst: 10 augustus 2003 Delen Geplaatst: 10 augustus 2003 Mensen, Ik ben bezig om icoontjes automatisch te laten uitlezen met directorie, de bedoeling is dus dat ik gewoon een directorie aanmaak, hier een zooi icoontjes in gooi en dat deze automatisch op het scherm verschijnen. Dit lukt allemaal, echter heb ik een probleem: De bedoeling is dat deze icoontjes netjes in een tabel geplaatst worden met een variabel aantal kollommen. $col = "5"; //aantal kollommen Nu staan er bijvoorbeeld 6 plaatjes in een directorie, wat er nu gebeurd is dat de tabel niet afgemaakt word, er komt dus netjes een rij van 6, vervolgens eentje van 1 i.p.v. 5 (zie ook http://msn.xanuex.nl/test2.php) en ook andersom is het geval, wanneer er 3 icoontjes instaan wordt de tabel niet met 2 lege cellen aangevuld. [code:1:e311bae1ef]De code: <?php $col = "5"; // Aantal kollommen $dir = "smileys"; // Eerste directorie function get_images($file, $dir) { $handle2 = opendir($dir."/".$file); $var = "1"; echo "<table border=\"1\" cellpadding=\"0\" cellspacing=\"0\" width=\"200\">\n <tr>"; while(false!==($image = readdir($handle2))) { if(($image != "." && $image != "..") AND ($var < "6")) { // echo "$image<br>"; echo "<td>$var</td>"; $var++; } else { echo "</tr><tr>"; $var = "1"; } } echo "</table>"; } $handle=opendir($dir); while(false!==($file = readdir($handle))) { if($file != "." && $file != "..") { echo "<br><b>$file<br></b>"; get_images($file, $dir); } } closedir($handle); ?> [/code:1:e311bae1ef] Het probleem zit hem in de WHILE-lus, is er iemand die een mogelijke oplossing ziet ? Ik hoop dat het een beetje duidelijk is, alvast bedankt - Marcel Quote Link naar reactie
anoniem Geplaatst: 10 augustus 2003 Auteur Delen Geplaatst: 10 augustus 2003 [code:1:9285769ee7] <html> <body> <table border="1" cellpadding="0" cellspacing="0" width="200"> <?php $col = 5; // Aantal kollommen $dir = "smileys"; // Eerste directorie function get_images($file, $dir, $col) { $handle2 = opendir($dir."/".$file); $var = 1; while(false!==($image = readdir($handle2))) { if($image != "." && $image != "..") { // echo "$image<br>"; echo " <td>$var</td>\n"; $var++; } if($var == $col+1) { echo "</tr>\n <tr>\n"; $var = 1; } } for($x=$var; $x<=$col; $x++) { if($var != 1) { echo " <td>&</td>\n"; } } echo " </tr>\n"; } $handle=opendir($dir); while(false!==($file = readdir($handle))) { if($file != "." && $file != "..") { echo "\n <tr>\n <td colspan=\"$col\">&</td>\n </tr>\n <tr>\n <td colspan=\"$col\"><b>$file</b></td>\n </tr>\n <tr>\n <td colspan=\"$col\">&</td>\n </tr>\n <tr>\n"; get_images($file, $dir, $col); } } closedir($handle); ?> </table> </body> </table> [/code:1:9285769ee7] al gevonden... Quote Link naar reactie
anoniem Geplaatst: 22 augustus 2003 Auteur Delen Geplaatst: 22 augustus 2003 Oke en dat werkt dus niet he.... De code die ik gebruik: [code:1:7fe7eb7b63] <!-- Zie ook: http://forum.computertotaal.nl/phpBB2/viewtopic.php?t=97707 --> <html> <body> <table border="1" cellpadding="0" cellspacing="0" width="200"> <?php $col = 5; // Aantal kollommen $dir = "msn"; // Eerste directorie function get_images($file, $dir, $col) { $handle2 = opendir($dir."/".$file); $var = 1; while(false!==($image = readdir($handle2))) { if($image != "." && $image != "..") { // echo "$image<br>"; echo " <td>$var</td>\n"; $var++; } if($var == $col+1) { echo "</tr>\n <tr>\n"; $var = 1; } } for($x=$var; $x<=$col; $x++) { if($var != 1) { echo " <td>&</td>\n"; } } echo " </tr>\n"; } $handle=opendir($dir); while(false!==($file = readdir($handle))) { if($file != "." && $file != "..") { echo "\n <tr>\n <td colspan=\"$col\">&</td>\n </tr>\n <tr>\n <td colspan=\"$col\"><b>$file</b></td>\n </tr>\n <tr>\n <td colspan=\"$col\">&</td>\n </tr>\n <tr>\n"; get_images($file, $dir, $col); } } closedir($handle); ?> </table> </body> </table> [/code:1:7fe7eb7b63] en ik krijg steeds deze meldingen: [quote:7fe7eb7b63] Warning: opendir(msn/12.jpg) [function.opendir]: failed to open dir: Invalid argument in C:\webroot\plaatjes\plaatjes.php on line 16 Warning: readdir(): supplied argument is not a valid Directory resource in C:\webroot\plaatjes\plaatjes.php on line 19 [/quote:7fe7eb7b63] Dat is voor alle plaatjes die in de msn dir. staan diezelfde 2 fouten maar, de bestandsnam is dan uiteraard anders. Als server heb ik: Apache 2.0.45 PHP 4.3.1 en MySQL 4.0.13 Wie maakt het script goed? Quote Link naar reactie
Aanbevolen berichten
Om een reactie te plaatsen, moet je eerst inloggen