Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] Zliczanie zaakceptowanych zaproszeń i wypisanie jako cyfra
rafaln
post
Post #1





Grupa: Zarejestrowani
Postów: 24
Pomógł: 0
Dołączył: 14.05.2010

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


Witam, napisałem aplikację na Facebooka.

Stanąłem jednak na banalnej rzeczy, gdyż wchodząc w Panelu w dział "Użytkownicy", chcę zliczyć ile dana osoba zaprosiła osób, wypisać w prosty sposób "Zaprosił: 3 znajomych".

Mam oczywiście bazę users oraz users_invites (patrząc w rekordy users_invites faktycznie działa [inviter_id = user_id],[invitee_id=id usera z facebook],następnie[accepted=1 lub 0].

Jak mam policzyć ile dany użytkownik zaprosił osób które mają Accepted na 1 i wypisać w ww. postaci [Zaprosił: 5 osób]?

Kolejne działanie to przypisywanie 1 punktu za 3 znajomych, ale na te chwilę to dla mnie większa bajka.
Można przesłać GET do ID żeby po kliknięciu w liczbę pobrało te osoby (to akurat jest proste bo przechowuję ID facebooka danej osoby)

Bardzo proszę o pomoc.

Ten post edytował rafaln 30.10.2010, 13:03:31
Go to the top of the page
+Quote Post
behu
post
Post #2





Grupa: Zarejestrowani
Postów: 52
Pomógł: 16
Dołączył: 8.08.2008
Skąd: London

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


zapytanie do bazy:
  1. SELECT * FROM `users_invites` WHERE `inviter_id`=id_uzytkownika AND `accepted`=1

Wybierze Ci wszystkie wiersze dla danego id_uzytkownika z wartością 1 w polu accepted.

Funkcją mysql_num_rows zliczysz ile wierszy zostało wybrane (czyli ile osób zaproszono).


Przykład:
  1. // gdzieś tam połączenie z bazą
  2.  
  3. $trescZapytania = "SELECT * FROM `users_invites` WHERE `inviter_id`=id_uzytkownika AND `accepted`=1";
  4. $zapytanie = mysql_query($trescZapytania); //wysyłamy zapytanie
  5. $wiersze = mysql_num_rows($zapytanie); //liczymy wiersze
  6.  
  7. echo 'Zaprosił: '.$wiersze.' osób'; //wyświetli np. Zaprosił: 5 osób
  8.  




Punkty najprościej tak:
  1. function punkty($a){
  2. $b = floor($a/3);
  3. return $b;
  4. }
  5.  
  6.  
  7. //użycie:
  8. $liczbaZaproszonych; //już wiemy jak pobrać z bazy
  9.  
  10. echo 'Masz: '.punkty($liczbaZaproszonych).' punkty/ów';
  11.  




--------------------
Freelancer - [C#, PHP, MySQL, xHTML, CSS]
michal.schweichler [at] gmail.com
http://www.elance.com/s/michal_schweichler/
Go to the top of the page
+Quote Post
CuteOne
post
Post #3





Grupa: Zarejestrowani
Postów: 2 958
Pomógł: 574
Dołączył: 23.09.2008
Skąd: wiesz, że tu jestem?

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


  1. $select = mysql_query("SELECT count(*) FROM......");
  2. $row = mysql_fetch_row($select);
  3.  
  4. echo $row[0];
  5.  
  6. // reszta tak jak wyżej
Go to the top of the page
+Quote Post
rafaln
post
Post #4





Grupa: Zarejestrowani
Postów: 24
Pomógł: 0
Dołączył: 14.05.2010

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


  1. <?php
  2.  
  3. // gdzieś tam połączenie z bazą
  4.  
  5.  
  6. $sql = "SELECT * FROM `users_invites` WHERE `inviter_id`=$user_id AND `accepted`=1";
  7. $zapytanie = mysql_query($sql) or die(debug($sql).mysql_error());
  8. $wiersze = mysql_num_rows($zapytanie); //liczymy wiersze
  9.  
  10. echo 'Zaprosił: ' . $wiersze . ' osób'; //wyświetli np. Zaprosił: 5 osób
  11. ?>


Z tym że wszyscy mają zero, a na swoim koncie w bazie mam np. 1 osobę i też pokazuje 0

ok /edit/
  1. <?php
  2. $sql = "SELECT * FROM users_invites WHERE inviter_id = '".$row['user_id']."' AND accepted = 1";
  3. $zapytanie = mysql_query($sql); //wysyłamy zapytanie
  4. $wiersze = mysql_num_rows($zapytanie); //liczymy wiersze
  5. //debug($sql);
  6. echo '' . $wiersze . ' osób'; //wyświetli np. Zaprosił: 5 osób
  7. ?>


Ten post edytował rafaln 31.10.2010, 17:47:02
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 21:10