Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] użycie substr_count, cosik nie tak z sumowaniem wyniku
nemo27
post
Post #1





Grupa: Zarejestrowani
Postów: 17
Pomógł: 0
Dołączył: 11.02.2003
Skąd: Mysłowice

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


Hej - przewałkowałem to forum i zaiste może dziwne, ale do mojego przykładu jakoś to nijak wszystko poprzednie nie pasuje, ale ab ovo: mam sobie dwa rekordy w bazie w pierwszym 1 i 3 w drugim 123 - w sumie odczyt daje 13123 i dalej jest sobie skrypcik odczytu:
  1. <?php
  2. $sql7 = mysql_query("SELECT pyt_9 FROM $tabname ") ;
  3. while($row7 = mysql_fetch_array($sql7)){
  4.  
  5. $x=$row7['pyt_9'];
  6. $nowy = str_replace("|","",$x);
  7.  
  8. $lit1=substr_count($nowy, "1");
  9.  
  10. echo "$lit1";
  11.  
  12. }
  13. ?>

No i tu się zaczynają schody - bo w wyniku otrzymuje nie sumę - ale wynik z poszczególnych rekordów - próbowałem z array i each ale za każdym razem wychodzą bzdury.
Powinno wychodzić "2" a jest 11 itede - ewentualnie jak dane z odczytu wyciągnąć poza while? Prosiłbym o pomoc.

Hehm - wiedziałem, że to trudne, może jakaś podpowiedź?

Ten post edytował nemo27 12.11.2006, 20:26:51
Go to the top of the page
+Quote Post
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
Powinno wychodzić "2" a jest 11 itede
(IMG:http://forum.php.pl/style_emoticons/default/blinksmiley.gif)
A od kiedy postawienie obok siebie 1 i 1 da ci 2? postawienie obok siebie 1 i 1 da 11. Kiedys byl nawet na ten temat kawal (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Skoro masz dwa rekordy i wpetli lecisz po tych rekordach i w kazdej iteracji wyleci ci na ekran 1, to po dwoch iteracjach bedziesz mial na ekranie 11. Echo nie sumuje wynikow. Jak chcesz miec zsumowane to sam sobie zsumuj.

proszę poprawić tytuł o znacznik zgodnie z zasadami forum Przedszkole:
Temat: Tematyka i zasady panujace na forum Przedszkole
Go to the top of the page
+Quote Post
nemo27
post
Post #3





Grupa: Zarejestrowani
Postów: 17
Pomógł: 0
Dołączył: 11.02.2003
Skąd: Mysłowice

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


No to się właśnie pytam jak mam to zrobić - przez ++$x?
Go to the top of the page
+Quote Post
nospor
post
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




No ale dodawac nie umiesz?

  1. <?php
  2. $liczba = 0;
  3. while($row7 = mysql_fetch_array($sql7)){
  4.  
  5. $x=$row7['pyt_9'];
  6. $nowy = str_replace("|","",$x);
  7.  
  8. $lit1=substr_count($nowy, "1");
  9.  
  10. $liczba += $lit1;
  11.  
  12. }
  13. echo $liczba;
  14. ?>
Go to the top of the page
+Quote Post
nemo27
post
Post #5





Grupa: Zarejestrowani
Postów: 17
Pomógł: 0
Dołączył: 11.02.2003
Skąd: Mysłowice

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


(IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) Oki działa (ehe, nic odkrywczego (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) ) - nie wpadłem na to wyzerowanie liczby przed pętlą (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Pozdro i dzięki
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: 22.08.2025 - 17:51