Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> niesforny return w funkcji!
fx69
post
Post #1





Grupa: Zarejestrowani
Postów: 40
Pomógł: 0
Dołączył: 8.10.2006
Skąd: świat astralny

Ostrzeżenie: (0%)
-----


  1. <?php
  2. function licz_brutto2($id_polacz, $check) {
  3. $vat_str = '';
  4. $netto_wart = '';
  5. $max = mysql_num_rows($id_polacz);
  6. $wartosc_koncowa = 0;
  7. $wartosc_koncowa_netto = 0;
  8. $wartosc_koncowa_detal = 0;
  9.  
  10. if($max != 0) {
  11. while($rowx = mysql_fetch_array($id_polacz)) {
  12. $vat_str .= $rowx[6].'-';  // vat
  13. $netto_wart .= $rowx[4] * $rowx[5] .'XX'; //ilosc * cena netto
  14. $sql = mysql_query("SELECT `cena_detal` FROM `towary` WHERE nazwa='$rowx[3]'") or die("Błąd w zapytaniu funkcji licz_brutto2");
  15. $rowy = mysql_fetch_array($sql);
  16. $wartosc_koncowa_detal += $rowy[0] * $rowx[4];
  17. $wartosc_koncowa_netto += $rowx[4] * $rowx[5];
  18.  
  19. }
  20.  
  21. $tablica_vat = explode("-", $vat_str);
  22. $tablica_netto = explode("XX", $netto_wart);
  23. for($i = 0; $i <= $max; $i++) 
  24. $netto[$tablica_vat[$i]] += $tablica_netto[$i];
  25.  
  26. while(list($key, $value) = each($netto))
  27. $wartosc_koncowa += $value + ($key/100) * $value;  //  pkt 1
  28.  
  29. if(!$check) return $wartosc_koncowa; //  pkt 2
  30. else if($check == 2) return $wartosc_koncowa_detal;
  31. else if($check == 1) return $wartosc_koncowa_netto;
  32. else return "Zły parametr funkcji";
  33. }
  34. else return NULL;
  35. }
  36. ?>


gapie sie w ta funkcje juz ponad godzine i nie potrafie znalezc bledu...
chodzi o to, ze w punkcie 1, wsadzajac przed $wartosc_koncowa echo, wyswietla obliczane wartosci. za to w punkcie 2 wszystkie wartosci rowne sa 0. dlaczego tak sie dzieje ? co tu jest zle ?

Ten post edytował fx69 19.12.2006, 00:01:48
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 28.09.2025 - 15:29