Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MYSQL]Jak policzyc
Forum PHP.pl > Forum > Przedszkole
miojamo
Witam

Mam taka tabele

id obrazek1 obrazek2 obrazek3
1 obr.jpg
2 obr33.jpg ob44.jpg


Potrzebuje policzyc ile jest obrazkow na wiersz (nie ile jest wierszy). Taki counter.

Jak to zrobic?
Lion_87
Możesz np w najprostszy,najgłupszy sposób:
  1. <?php
  2. //ZAPYTANIE
  3.  
  4. while ($row = mysql_fetch_array($result))
  5. {
  6. $ob_id=$row['id'];
  7. $ob1=$row['obrazek1'];
  8. $ob2=$row['obrazek2'];
  9. $ob3=$row['obrazek3'];
  10.  
  11. if($ob1 != ""){$ob1wartosc="1";}else{$ob1wartosc="0";}
  12. if($ob2 != ""){$ob2wartosc="1";}else{$ob2wartosc="0";}
  13. if($ob3 != ""){$ob3wartosc="1";}else{$ob3wartosc="0";}
  14.  
  15. $suma=$ob1wartosc+$ob2wartosc+$ob3wartosc;
  16. echo"$ob_id=$suma<br>";
  17.    
  18.    }
  19. ?>


...ale to tylko przykład(głupi).
miojamo
Probowalem tak juz w smarty ale powtarza mi to samo w kazdym wierszu nie wiem czy to nie jest BUG


{if $item.image1}{assign var="licznik1 value="1"}{/if}
{if $item.image2}{assign var="licznik2 value="1"}{/if}
{if $item.image3}{assign var="licznik3 value="1"}{/if}


{$licznik1 + $licznik2 + $licznik3}
Gość
Cytat(miojamo @ 13.11.2008, 12:47:40 ) *
Probowalem tak juz w smarty ale powtarza mi to samo w kazdym wierszu nie wiem czy to nie jest BUG
{if $item.image1}{assign var="licznik1 value="1"}{/if}
{if $item.image2}{assign var="licznik2 value="1"}{/if}
{if $item.image3}{assign var="licznik3 value="1"}{/if}
{$licznik1 + $licznik2 + $licznik3}



Oczywiscie w petli


{foreach from=$list item=item}

{if $item.image1}{assign var="licznik1 value="1"}{/if}
{if $item.image2}{assign var="licznik2 value="1"}{/if}
{if $item.image3}{assign var="licznik3 value="1"}{/if}


{$licznik1 + $licznik2 + $licznik3}

{/foreach}
erix
Bo nie zerujecie $suma na początku pętli i będzie rosło za każdym razem. ;p

Poza tym, jest taka fajna konstrukcja empty" title="Zobacz w manualu PHP" target="_manual:
Cytat
  1. <?php
  2. if($ob1 != ""){$ob1wartosc="1";}else{$ob1wartosc="0";}
  3. if($ob2 != ""){$ob2wartosc="1";}else{$ob2wartosc="0";}
  4. if($ob3 != ""){$ob3wartosc="1";}else{$ob3wartosc="0";}
  5.  
  6. $suma=$ob1wartosc+$ob2wartosc+$ob3wartosc;
  7. ?>

:
  1. <?php
  2. $suma = 0;
  3. $suma += (int)!empty($ob1wartosc);
  4. $suma += (int)!empty($ob2wartosc);
  5. $suma += (int)!empty($ob3wartosc);
  6. ?>
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.