Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: echo "$ilosc nieprzeczytanych wiadomości"
Forum PHP.pl > Forum > PHP
kns0
Witam!
Mam problem ze skryptem do pewnego systemu umieszczonego na serwerze ftp. Mianowicie:

Napisałem skrypt do poczty między użytkownikami tego systemu. Wszystko gra i nie ma z tym żadnych problemów. Jednak wczoraj pomyślałem, że na stronie głównej mógłbym napisać coś takiego:

Witaj, $nick
$ilosc nieprzeczytanych wiadomości

$nick - nick zalogowanego użytkownika
$ilosc - nieprzeczytane wiadomości znajdujące się u tego użytkownika w skrzynce odbiorczej

Z $nick nie ma problemu, bo pobieram sobie ją z sesji.
Jednak nie mogę poradzić sobie ze zliczaniem tych wiadomości. W bazie danych mam oznaczone wiadomości tak:
1-wiadomość nieprzeczytana
0-wiadomość przeczytana

Oto kod:
  1. include("./config.php");
  2.  
  3. $wynik = mysql_query("SELECT * FROM wiadomosci WHERE wiad_do='$odbiorca' AND wiad_przeczytane='1'") or die('Błąd zapytania');
  4.  
  5. if(mysql_num_rows($wynik) > 0) {
  6. /* jeżeli wynik jest pozytywny, to wyświetlamy dane */
  7. while($r = mysql_fetch_assoc($wynik)) {
  8.  
  9. $wiadomosci=$r['wiad_przeczytane'];
  10. echo "$wiadomosci";
  11. }
  12. }


Efektem tego jest wyświetlanie ciągu liczb:
1111 dla 4 wiadomości
11111 dla 5 wiadomości
111111 dla 6 wiadomości
itd.

Próbowałem postawić funkcję strlen() w pętli while i za pętlą ale nic się nie udaje (ta funkcja liczy ilość znaków w wyrazie)

Pomóżcie sad.gif

Jak zrobić, aby ten ciąg znaków został zsumowany poprawnie?
CuteOne
  1. include("./config.php");
  2.  
  3. $wynik = mysql_query("SELECT COUNT(*) as cnt FROM wiadomosci WHERE wiad_do='$odbiorca' AND wiad_przeczytane=1") or die(mysql_error());
  4. $r = mysql_fetch_assoc($wynik);
  5.  
  6. echo $r['cnt'];
kns0
Serdeczne dzięki biggrin.gif

"Pomógł" leci do Ciebie oczywiście!
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.