Ten kod wypisuje mi
Otrzymane:Kwota:-28160.00W tablicy:-28160
Otrzymane:Kwota:-500.00W tablicy:-500
|||||||||||||||
|||||||||||||||
|||||||||||||||
|||||||||||||||
|||||||||||||||
|||||||||||||||
|||||||||||||||
|||||||||||||||
|||||||||||||||
|||||||||||||||
|||||||||||||||
|||||||||||||||
|||||||||||||||
|||||||||||||||
|||||||||||||||
Tak jakby w ogóle nie przekazywał return $dane;
function daneSkrot($poziom, $maxpoziom, $rodzic, $warunek='') { $result = mysql_query("SELECT kk.id, kk.rodzic, SUM(CASE WHEN kw.typ=1 THEN kw.kwota ELSE (0-kw.kwota) END) AS kwota, kw.oddzial FROM kategorie_kasy kk, kasy kw WHERE kw.kategoria=kk.id AND {$warunek} kk.poziom='{$poziom}' AND kk.rodzic='{$rodzic}' GROUP BY kw.oddzial"); if ($poziom<$maxpoziom) { $dane=daneSkrot($poziom+1, $maxpoziom, $row['id'], $warunek); } $dane[$row['rodzic']][$row['oddzial']]=$dane[$row['rodzic']][$row['oddzial']]+$dane[$row['id']][$row['oddzial']]+$row['kwota']; } return $dane; } $dane = daneSkrot(0,2,0); for ($rzad=0;$rzad<15;$rzad++) { for($kolumna=0;$kolumna<15;$kolumna++) }
Rozwiązałem. Temat do zamknięcia
<?php include 'config.php'; db_connect(); function daneSkrot($poziom, $maxpoziom, $rodzic, $warunek='') { $result = mysql_query("SELECT kk.id, kk.rodzic, SUM(CASE WHEN kw.typ=1 THEN kw.kwota ELSE (0-kw.kwota) END) AS kwota, kw.oddzial FROM kategorie_kasy kk, kasy kw WHERE kw.kategoria=kk.id AND {$warunek} kk.id>0 AND kk.poziom='{$poziom}' AND kk.rodzic='{$rodzic}' GROUP BY kw.oddzial, kk.id"); if ($poziom<$maxpoziom) { $dane=daneSkrot($poziom+1, $maxpoziom, $row['id'], $warunek); echo 'KAT:'.$row['id'].'ODD:'.$row['oddzial'].'Otrzymane:'.$dane[$row['id']][$row['oddzial']].'Kwota:'; } if($row['rodzic']==0) { $dane[$row['id']][$row['oddzial']]=$dane[$row['id']][$row['oddzial']]+$row['kwota'];} else { $dane[$row['rodzic']][$row['oddzial']]=$dane[$row['rodzic']][$row['oddzial']]+$dane[$row['id']][$row['oddzial']]+$row['kwota'];} echo $row['kwota'].'W tablicy:'.$dane[$row['id']][$row['oddzial']].'<br/>'.'W tablicy UP:'.$dane[$row['rodzic']][$row['oddzial']].'<br/>'; } return $dane; } $dane = daneSkrot(0,2,0); for ($rzad=1;$rzad<15;$rzad++) { for ($kolumna=1;$kolumna<15;$kolumna++) } db_close(); ?>