30. november 2011 - 16:51Der er
7 kommentarer og 1 løsning
Warning: Invalid argument supplied for foreach() in
har en funktion der skal tælle hvor mange billeder der findes i en mappe og vise dem hvis der er mere end 1, ellers udskriver den . Det virkede da kørte den på localhost, men ikke da jeg lagde den ud på min server.. Koden ser sådan her ud:
if ($antal < 1) { print " <div style=\"height: 3px;\"></div> <i>Der er ikke blevet tilføjet nogen billeder til denne reunion</i> <div style=\"height: 3px;\"></div>"; } else { print " <div style=\"height: 3px;\"></div>";
$counter = 1;
foreach($images as $image) { if ($counter < 40) { print "<img src=\"$image\" width=\"40\" height=\"40\"> ";
print " <div style=\"height: 7px;\"></div><a href=\"vis.php?action=showpics&dir=$dir\" class=\"n\" onClick=\"return popup(this, '')\">Se alle billederne fra denne reunion</a>";
}
Prøvede at skrive " print $antal; " og fik resultatet 1 selvom der ikke var nogen filer i mappen.. Den tror altså der findes 1 fil i mappen selvom den er tom hvilket selvfølgelig forvirrer foreach funktionen.. Den er altså gal omkring:
Prøv at skrive $images ud, så du kan sammenligne det den finder med dine forventninger. Det kunne jo være, at en af de filer, den fandt, var ".." (altså et niveau op) eller ".".
Det gjorde forhåbentlig den forskel, at du kan se hvilke filnavne $images indeholder. Du siger, at der er 1 fil - check navnet og forhold dig til det i forhold til #1.
Når der er noget, man ikke forstår, må man undersøge det nærmere.
ja det er rigtig nok, det var en semi-løsning du kom med :)
okay så smider bare selv et svar
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.