Jest to kawałek kodu skryptu wirtualnego alkomatu. Mam taki problem chce zawrzeć kilka warunków if w pętli while, jednak taka instrukcja nie działa w skrypcie, konkretnie chodzi o fragment kodu dla zmiennej if ($zoladek == "pelny") gdzie są wprowadzone 4 warunki dla pozostałych zmiennych skrypt działa prawidłowo. Konkretnie chodzi mi o to aby od wartości zmiennej $index uzależnić sposób obliczania
while (($promile3 >= 0 && $promile3 < 7) || ($promile3 < 7 && $czas0 <= $czaspicia)) {
if ($czaspicia == 0) {
$czaspicia = 0.1;
}
$t = ($czas0 - $wspzol) / $czaspicia;
if ($t > 1) {
$t = 1;
}
if ($zoladek == "pusty") {
if ($index <= 0) {
$promile3 = ($a * $t * $wspzol2 - (( 0.14 - $wspwagwzr ) * ($czas0 - $wspzol)) * $wspzol2)/1.15;
}
if ($index > 0) {
$promile3 = $a * $t * $wspzol2 - (( 0.14 - $wspwagwzr ) * ($czas0 - $wspzol)) * $wspzol2;
}
}
if ($zoladek == "pelny1/2") {
if ($index <= 0) {
$promile3 = ($a * $t * $wspzol2 - (( 0.14 - $wspwagwzr ) * ($czas0 - $wspzol)) * $wspzol2)/2.4;
}
if ($index > 0) {
$promile3 = $a * $t * $wspzol2 - (( 0.14 - $wspwagwzr ) * ($czas0 - $wspzol)) * $wspzol2;
}
}
if ($zoladek == "pelny") {
if ($index==0) {
$promile3 = ($a * $t * $wspzol2 - (( 0.14 - $wspwagwzr ) * ($czas0 - $wspzol)) * $wspzol2)/14;
}
elseif ($index==1) {
$promile3 = $a * $t * $wspzol2 - (( 0.14 - $wspwagwzr ) * ($czas0 - $wspzol)) * $wspzol2/2;
}
elseif ($index==2) {
$promile3 = $a * $t * $wspzol2 - (( 0.14 - $wspwagwzr ) * ($czas0 - $wspzol)) * $wspzol2/1.5;
}
elseif ($index==3) {
$promile3 = $a * $t * $wspzol2 - (( 0.14 - $wspwagwzr ) * ($czas0 - $wspzol)) * $wspzol2/1.15;
}
elseif ($index) {
$promile3 = $a * $t * $wspzol2 - (( 0.14 - $wspwagwzr ) * ($czas0 - $wspzol)) * $wspzol2;
}
}
if ($czaspicia == 0.1) {
$czaspicia = 0;
}
if ( $czas0 - $czaspicia > 0) {
$czasodkonca = $czas0 - $czaspicia;
} else {
$czasodkonca = "--";
}
$godzina1 = $godzina + $czas0;
while ($godzina1 >= 24) {
$godzina1 = $godzina1 - 24;
}
$promile3wsw = round($promile3, 2
); if ($promile3 > 0 && $promile3 <= 7) {
$returned .= "promile$index=$promile3wsw&";
}
if ($promile3 <= 0) {
$returned .= "promile$index=0.00&";
}
if ($promile3 > 7) {
$returned .= "promile$index=zgon&";
}
$czas0 = $czas0 + 0.5;
$index++;
}