[php] Fout met tellen

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

  • ilovetechno
  • Registratie: Oktober 2001
  • Laatst online: 24-11-2025
Ik heb een script gemaakt in PHP. Dit scriptje list alles binnen een bepaalde folder en maakt er menutjes van... Het werkt goed.. Alleen ik krijg eerst alle bestanden en folders.. maar aan het einde errors. Ik kom er ook niet uit hoe ik alleen de laatste 3 folders/bestanden laat weergeven.

in c:\program files\easyphp1-8\www\website\template\test.php on line 15

Notice: Undefined offset: 20 in c:\program files\easyphp1-8\www\website\template\test.php on line 15

Notice: Undefined offset: 20 in c:\program files\easyphp1-8\www\website\template\test.php on line 15

Notice: Undefined offset: 20 in c:\program files\easyphp1-8\www\website\template\test.php on line 19

Notice: Undefined offset: 20 in c:\program files\easyphp1-8\www\website\template\test.php on line 20


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
 
<?php
$count=0;
$self=basename($_SERVER["PHP_SELF"]);
$members = opendir('./images');

while (false !== ($file = readdir($members))) { 
$files[$count] = $file;
$count ++;
} 

closedir($members);

$i = 0;
while ($i <= $count) {
if($files[$i] == $self || $files[$i] == '.'|| $files[$i] == '..') {
$i++;
}
else {
$file2 = explode(".",$files[$i]);
echo "<br> <li><a href=\"$files[$i]\">$file2[0]</a></li> \n";
$i++;
}}
?>

  • TheRookie
  • Registratie: December 2001
  • Niet online

TheRookie

Nu met R1200RT

ipv handmatig counters bij te houden is het waarschijnlijk makkelijker om op regel 7 $files[]=$file te doen en op 14 een foreach ($files as $file) te gebruiken.

Je hoogt nu $count op nadat je een file hebt toegevoegd (regel 8) waardoor je count altijd 1 hoger is dan het daadwerkelijke aantal items in het array, als je het aantal items in het $files array wil weten kan je beter count($files) gebruiken :)

[ Voor 1% gewijzigd door TheRookie op 09-08-2006 09:44 . Reden: + [norml] ]


  • whoami
  • Registratie: December 2000
  • Nu online
Wat je moet doen, is je code debuggen. Dat is een vaardigheid die iedere programmeur moet bezitten.

https://fgheysels.github.io/


Dit topic is gesloten.