Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Mnozenie z mysql i php
Forum PHP.pl > Forum > PHP
KasztanPL
Siemka


Mam pytanie mianowice nie wiem jak pomnozyc wyciagniete liczby(rekordy) z mysql ich ilosc zalezy od usera


Kod
$wart = ("select wartosc from rok where year >= '$rok1' AND year <= '$rok2'"); // wybiera rekordy
$r = mysql_query( $wart, $link );

while ( $arrRow = mysql_fetch_array($r) )  
   {
    $wartosc = $arrRow['wartosc'];
    
// tu chciałbym zeby dało sie pomnozyc wszystkie rekordy np $wartosc*$wartosc*$wartosc ale jak tak robie to niedziała

    
   }




Prosze o pomoc i pomocniczy kod z góry dzieki pozdro4all
phpion
  1. <?php
  2. $wart = ("select wartosc from rok where year >= '$rok1' AND year <= '$rok2'"); // wybiera rekordy
  3. $r = mysql_query( $wart, $link );
  4.  
  5. $iloczyn = 1;
  6.  
  7. while ( $arrRow = mysql_fetch_array($r) )  
  8.  {
  9. $iloczyn *= $arrRow['wartosc'];
  10.  }
  11.  
  12. echo $iloczyn;
  13. ?>

O to Ci chodzi?
KasztanPL
Dzieki o to:)



Mozesz mi wytłumaczyc o co chodzi w tym
Kod
$iloczyn = 1;

while ( $arrRow = mysql_fetch_array($r) )  
   {
  $iloczyn *= $arrRow['wartosc'];
   }

za bardzo nie wiem
Hazel
  1. <?php
  2. $iloczyn = 1; // przypisujesz poczatkową wartość iloczynu
  3. // będzie to 1 - czyli element neutralny mnożenia, z matematyki podstawowej
  4. // wszystko co pomnożysz przez 1 będzie tą samą liczbą
  5. // więc to sie tu nadaje
  6.  
  7. while ( $arrRow = mysql_fetch_array($r) )  
  8. // pętla pobierająca z bazy wyniki
  9. // jeśli nie rozumiesz działania funkcji
  10. // mysql_fetch_array(), poczytaj o niej w manualu
  11. // pętla zapisuje po kolei każdy wiersz w zmiennej $arrRow
  12. {
  13. $iloczyn *= $arrRow['wartosc'];
  14. // to jest równoznaczne z zapisem
  15. // $iloczyn = $iloczyn * $arrRow['wartosc'];
  16. // czyli mnożysz stary iloczyn przez wartość pobraną z bazy
  17. // i zapisujesz wynik w nowym iloczynie
  18. // przy następnej iteracji nowy iloczyn będzie starym
  19. // i tak to się będzie zapętlać
  20. // tyle razy ile jest rekordów w bazie
  21. }
  22. ?>
phpion
To Ci powinno w pełni wyjaśnić co się dzieje:
  1. <?php
  2. ...
  3. while ( $arrRow = mysql_fetch_array($r) )  
  4.  {
  5. echo 'Stary iloczyn: '.$iloczyn.'<br />';
  6. $iloczyn *= $arrRow['wartosc'];
  7. echo 'Wartosc z bazy: '.$arrRow['wartosc'].'<br />';
  8. echo 'Nowy iloczyn (stary * wartosc): '.$iloczyn.'<br />';
  9. echo '<hr />';
  10.  }
  11. ...
  12. ?>

Odpal w ten sposób zmodyfikowany skrypt, a zobaczysz co dzieje się wewnątrz pętli.
KasztanPL
Wielkie dzieki teraz juz rozumiem smile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.