Делаю итоговые строки по фирмам в таблице и хочу чтобы в случае если произошла ошибка т.е. $summa[$i]<>$firmitog[$i] то строка с цифрой выделялась красным цветом (при рассчетах происходит округление и могут пропасть числа)
i - номер фирмы
например $summa[0] означает, что это сумма которая должна быть у фирмы номер 1. а $firmitog[0] - итоговая сумма которая получилась при рассчетах фирмы номер 1.
и если имеются расхождения, то выделить красным. иначе оставить черным.
вот код:
for ($i=0; $i<count($firm);$i++){
$a='black';
if ($summa[$i]<>$firmitog[$i]) {
$a='red';
}
echo "<td colspan=2><strong>".'Итого '.$firm[$i]."</strong></td>";
echo "<td><strong><font color=$a>".$firmitog[$i]."</font></strong></td></tr>";
}
но почему-то первая строка подсвечивается красным!
хотя значения равны.. почему программа считает их разными?
я даже пробовал ставить (int) у каждого массива.
Спустя 8 минут, 24 секунды (24.02.2012 - 14:57) ТС написал(а):
причем красным выделяет только 1 строку. все остальные черные..
хотя значения равны
хотя значения равны
Спустя 7 минут, 46 секунд (24.02.2012 - 15:04) Guest написал(а):
попробовал поменять исходные данные.. меняется не только первая. а в зависимости от значений
вот пример..
print_r ($firmitog); выводит:
Array ( [0] => 500000 [1] => 300000 [2] => 400000 )
print_r ($summa);выводит:
Array ( [0] => 500000 [1] => 300000 [2] => 400000 )
но при этом если добавить
то выводится Нет
а если в скобках поставить 1 - Да. 2 - Нет..
в чем дело?
вот пример..
print_r ($firmitog); выводит:
Array ( [0] => 500000 [1] => 300000 [2] => 400000 )
print_r ($summa);выводит:
Array ( [0] => 500000 [1] => 300000 [2] => 400000 )
но при этом если добавить
echo $firmitog[0]."<br>".$summa[0];
if ($firmitog[0]==($summa[0]))
echo 'Да';
else
echo 'Нет';
то выводится Нет
а если в скобках поставить 1 - Да. 2 - Нет..
в чем дело?
Спустя 56 минут, 48 секунд (24.02.2012 - 16:01) shmali написал(а):
Все нормально работает .
вот я у себя написал и проверил .
вот я у себя написал и проверил .
$summ = array('0'=>0,'1'=>1,'2'=>2);
$test = array('0'=>0,'1'=>1,'2'=>2);
for ($i=0;$i< count($summ); $i++)
{
$a='black';
if($test[$i] != $summ[$i])
{
$a='red';
}
echo "<a style='color:".$a."'>test</a><br>";
}