uge funktion med js-array er underlig !
Jeg er ved at lave et bookingsystem, og der er en funktion, der checker om man har bestile mindst en sammenhængende uge, og ingen enkeltstående dage. Jeg fik hjælp til funktionen her: http://www.eksperten.dk/spm/575356Men ak, coderdk. Der lader til at være noget galt. Jeg har dog på fornemmelsen at det er noget med caching i stedet for scriptet. Scriptet ser dog således ud:
function helUge($arr) {
$n = count($arr);
if($n < 7) {
return "Du bedes bestille mindst en sammenhængende uge";
}
sort($arr);
reset($arr);
for($i = 0; $i < $n - 1; $i++) {
//echo date("d/m-Y", strtotime($arr[$i]))." - ";
//echo date("d/m-Y", strtotime( "-1 DAY", strtotime( $arr[ $i + 1 ] ) ) ) . "<br>";
if(strtotime($arr[$i]) != strtotime("-1 DAY", strtotime($arr[$i+1]))) {
return "De bestilte dage er ikke sammenhængende";
}
}
return "";
}
Problemet er at hvis man vælger noget, der ikke duer, f.eks en enkelt dag, og trykker "bestil", så får man fint nok fejlen, men hvis man så vælger en korrekt uge bagefter, kommer fejl nr. 2 ofte. Prøv selv her: www.legende.dk/booking/kalenderny.php
vælg så 1 løs dag (f.eks 8/1)
klik "bestil"
klik "tilbage til kalender"
vælg en sammenhængende uge ved at klikke rodet
klik "bestil"
(nu er der en 50 % chance for at i siger: Det virker da fint. Men af en eller anden årsag går den kold nogen gange)
Hvad sker der?
