Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Mnozenie z mysql i php, ...
KasztanPL
post
Post #1





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 30.07.2007

Ostrzeżenie: (10%)
X----


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
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
phpion
post
Post #2





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




  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?
Go to the top of the page
+Quote Post
KasztanPL
post
Post #3





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 30.07.2007

Ostrzeżenie: (10%)
X----


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

Ten post edytował KasztanPL 7.09.2007, 15:58:15
Go to the top of the page
+Quote Post
Hazel
post
Post #4





Grupa: Zarejestrowani
Postów: 492
Pomógł: 33
Dołączył: 16.08.2007
Skąd: Wrocław

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


  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. ?>


Ten post edytował Hazel 7.09.2007, 16:26:50
Go to the top of the page
+Quote Post
phpion
post
Post #5





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




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.
Go to the top of the page
+Quote Post
KasztanPL
post
Post #6





Grupa: Zarejestrowani
Postów: 28
Pomógł: 0
Dołączył: 30.07.2007

Ostrzeżenie: (10%)
X----


Wielkie dzieki teraz juz rozumiem (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

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: 23.08.2025 - 14:47