|
|
phpBB2 by Przemo
Support forów phpBB2 modified by Przemo
|
|
Przesunięty przez: Matteo 09-11-2013, 09:37 |
Zliczanie u?ytkowników obecnych przez ostatnie 24h |
Autor |
Wiadomość |
pawelooss
Pomógł: 4 razy Posty: 110
|
Wysłany: 31-03-2009, 22:50
|
|
|
Nie bardzo pasowało mi to rozwiązanie z liczbą userów w nawiasie, więc wplotłem ją w tekst, co dało:
Kod: | Przez ostatnie xx godziny na forum było x użytkowników: |
Wklejam zmodyfikowaną instrukcję, gdyby ktoś też tak chciał zrobić.
Kod: | #
#-----[ OPEN ]----------
#
index.php
#
#-----[ FIND ]----------
#
$sql = "SELECT user_id, username, user_level, user_jr, user_session_time, user_allow_viewonline
FROM " . USERS_TABLE . "
WHERE user_id > 0
AND user_session_time >= $time_to_show
ORDER BY user_level = 1 DESC, user_jr DESC, user_level = 2 DESC, user_level = 0 DESC, username";
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not obtain user/day information', '', __LINE__, __FILE__, $sql);
}
#
#-----[ AFTER ADD ]----------
#
$user_day_quantity = $db->sql_numrows($result);
#
#-----[ FIND ]----------
#
'USERS_OF_THE_DAY_LIST' => ($board_config['u_o_t_d'] && $userdata['u_o_t_d']) ? sprintf($lang['Day_users'], $board_config['last_visitors_time']) . ' ' . $day_userlist : '',
#
#-----[ REPLACE WITH ]----------
#
'USERS_OF_THE_DAY_LIST' => ($board_config['u_o_t_d'] && $userdata['u_o_t_d']) ? sprintf($lang['Day_users'], $board_config['last_visitors_time']) . ' ' . $user_day_quantity . ' ' . $lang['Day_users2'] . $day_userlist : '',
#
#-----[ OPEN ]----------
#
language/lang_polish/lang_main.php
#
#-----[ FIND ]----------
#
$lang['Day_users'] = 'Przez ostatnie %s godziny byli na forum:';
#
#-----[ REPLACE WITH ]----------
#
$lang['Day_users'] = 'Przez ostatnie %s godziny na forum było';
#
#-----[ AFTER ADD ]----------
#
$lang['Day_users2'] = 'użytkowników: '; |
|
_________________ Nie widzę przez ściany i nie umiem pleść wiklinowych koszyków. ^^, |
|
|
|
|
Gadatliwa Kasia
|
|
|
|
oxygen
Posty: 11
|
Wysłany: 21-04-2009, 11:13
|
|
|
Prościej zrobiłem od pawelooss
Podstawowa instrukcja z pierwszego postu tylko zamiast tego
Kod: |
'USERS_OF_THE_DAY_LIST' => ($board_config['u_o_t_d'] && $userdata['u_o_t_d']) ? sprintf($lang['Day_users'], $board_config['last_visitors_time']) . ' ' . $day_userlist : '', |
wklejamy to
Kod: | 'USERS_OF_THE_DAY_LIST' => ($board_config['u_o_t_d'] && $userdata['u_o_t_d']) ? sprintf($lang['Day_users'], $board_config['last_visitors_time']) . ' -><B>' . $ile . '</B><- użytkowników : ' . $day_userlist : '', |
rezultat Przez ostatnie 24 godziny byli na forum: ->XX<- użytkowników :
gdzie liczba jest pogrubiona pasująca do stylu statystyk
Podgląd demo www.skuter4t.net |
|
|
|
|
korownik
Posty: 1
|
Wysłany: 10-07-2009, 16:10
|
|
|
Witam mam problem
pokazuje się mi sam nawias bez liczby ( )
w załączniku daje mój index
proszę o pomoc z góry thx
[ Dodano: 10-07-2009, 17:12 ]
mój index |
|
|
|
|
warna
Pomógł: 475 razy Posty: 2335
|
Wysłany: 10-07-2009, 17:09
|
|
|
Przeczytałeś instrukcję w ogóle?
Znajdź
Kod: | 'USERS_OF_THE_DAY_LIST' => ($board_config['u_o_t_d'] && $userdata['u_o_t_d']) ? sprintf($lang['Day_users'], $board_config['last_visitors_time']) . ' (' . $db->sql_numrows($result) . ') ' . $day_userlist : '', |
zamień na
Kod: | 'USERS_OF_THE_DAY_LIST' => ($board_config['u_o_t_d'] && $userdata['u_o_t_d']) ? sprintf($lang['Day_users'], $board_config['last_visitors_time']) . ' (' . $ile . ') ' . $day_userlist : '', |
|
|
|
|
|
tymek
Pomógł: 1 raz Posty: 433
|
Wysłany: 25-10-2009, 11:17
|
|
|
Ktoś wie, co zrobić, aby te statystyki wygladały tak, jak statystyki aktualnie online na forum?
Czyli:
przez ostatnich 24 godzin na forum bylo: xxx (wszystkich razem), uzytkoników: xxx, gości: xxx
?? |
_________________ Szukam programisty PHP, który wykona parę zleceń - modyfikacje na forum. Proszę o kontakt na PW. |
|
|
|
|
arehiba
Pomógł: 1 raz Posty: 9
|
Wysłany: 28-11-2010, 09:06
|
|
|
wgrałem tego moda i dlaczego mi się robi:
Przez ostatnie 24 godziny byli na forum: ()
? |
|
|
|
|
Pavelx2
Posty: 13
|
Wysłany: 05-12-2010, 18:15
|
|
|
Mi wyskakuje taki błąd:
Warning: mysql_num_rows(): 25 is not a valid MySQL result resource in /homepages/23/d341321355/htdocs/db/mysql4.php on line 176
Załączam plik index, proszę zróbcie mi to ! |
|
|
|
|
Jagus1920
Pomógł: 1 raz Posty: 4
|
Wysłany: 05-08-2011, 10:44
|
|
|
Gdzie ten kod wkleić ? |
_________________ EKSTRAKLASA JEST JUZ NASZA |
|
|
|
|
Matteo
Pomógł: 1932 razy Posty: 5713
|
Wysłany: 16-09-2011, 18:24
|
|
|
Jagus1920, Cytat: | Kod: | #
#-----[ OPEN ]----------
#
index.php |
|
|
_________________
Fora, strony, sklepy internetowe i wiele więcej...
matteo.fcb(at)gmail.com |
|
|
|
|
Justus
Posty: 13
|
Wysłany: 15-12-2011, 22:52
|
|
|
tymek napisał/a: | Ktoś wie, co zrobić, aby te statystyki wygladały tak, jak statystyki aktualnie online na forum?
Czyli:
przez ostatnich 24 godzin na forum bylo: xxx (wszystkich razem), uzytkoników: xxx, gości: xxx
?? |
Dołączam się do prośby, czy jest możliwość dodatkowego wyświetlania ilu gości odwiedziło nasze forum ?. |
|
|
|
|
Azuel
Pomógł: 1 raz Posty: 69
|
Wysłany: 02-01-2013, 13:00
|
|
|
Witam serdecznie.
Mam pytanko, czy idzie jakoś połączyć kod z instrukcji tj:
Kod: | $sql = "SELECT user_id, username, user_level, user_jr, user_session_time, user_allow_viewonline
FROM " . USERS_TABLE . "
WHERE user_id > 0
AND user_session_time >= $time_to_show
ORDER BY user_level = 1 DESC, user_jr DESC, user_level = 2 DESC, user_level = 0 DESC, username".$last_visitors_limit;
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not obtain user/day information', '', __LINE__, __FILE__, $sql);
} |
z kodem który sortuje nazwy użytkowników według pierwszeństwa grup tj:
Kod: | $sql = "SELECT a.user_id, a.username, a.user_level, a.user_jr, a.user_session_time, a.user_allow_viewonline, b.user_id, b.group_id, c.group_id, c.group_order
FROM " . USERS_TABLE . " a JOIN " . USER_GROUP_TABLE . " b JOIN " . GROUPS_TABLE . " c ON a.user_id=b.user_id
WHERE a.user_id > 0
AND b.group_id=c.group_id
AND c.group_order > 0
AND user_session_time >= $time_to_show " . $sql_fields . "
ORDER BY c.group_order
" . $last_visitors_limit;
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not obtain user/day information', '', __LINE__, __FILE__, $sql);
} |
Cały czas kombinuje jak by to zrobić ale za cienki jestem chyba potrzebuje zrobić tak żeby i sortowało odpowiednio, i pokazywało poprawne zliczanie.
Gdy znowu jest normalnie kod który posiadam na sortowanie według grup, to licznik zlicza każdego użytkownika podwójnie.
Prosiłbym o pomoc ewentualnie jakieś rady jak to połączyć razem
Pozdrawiam. |
|
|
|
|
kooza
Pomógł: 486 razy Posty: 2401
|
Wysłany: 03-01-2013, 23:05
|
|
|
Kod: | $sql = "SELECT a.user_id, a.username, a.user_level, a.user_jr, a.user_session_time, a.user_allow_viewonline, b.user_id, b.group_id, c.group_id, c.group_order
FROM " . USERS_TABLE . " a JOIN " . USER_GROUP_TABLE . " b JOIN " . GROUPS_TABLE . " c ON a.user_id=b.user_id
WHERE a.user_id > 0
AND b.group_id=c.group_id
AND c.group_order > 0
AND user_session_time >= $time_to_show " . $sql_fields . "
ORDER BY c.group_order
" . $last_visitors_limit;
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not obtain user/day information', '', __LINE__, __FILE__, $sql);
}
$ile = $db->sql_numrows($result); |
|
|
|
|
|
Azuel
Pomógł: 1 raz Posty: 69
|
Wysłany: 03-01-2013, 23:18
|
|
|
Przecież to mi nie pomaga.
Czy do obu kodów które podałem w poprzednim poście muszę dodać
Kod: | $ile = $db->sql_numrows($result); |
żeby ktoś zrozumiał że tak też mam w pliku index.php i że nie pominąłem tej części instalacji?
Pierwszy kod jest z instrukcji na zliczanie,
Drugi kod jest z modyfikacji po której wszystkie osoby sortuje według grup.
@ Kooza wybacz ale nie pomogła mi Twoja opcja bo to jest nadal drugi kod który podałem oraz na samym końcu też widniała linijka którą podałeś, tak przy jednym kodzie jak i drugim.
Problem w tym że pierwszy kod zlicza poprawnie ale grup nie sortuje a drugi kod na odwrót dlatego pytam czy jest możliwośc żeby mi ktoś pomógł je połączyć razem aby oddawały na forum obie funkcje.
Pozdrawiam. |
|
|
|
|
MQs
Pomógł: 172 razy Posty: 480
|
Wysłany: 04-01-2013, 03:10
|
|
|
Azuel, Wyczyść cache i powinno działać. Samo zapytanie nie jest istotne, aby zwracało użytkowników (obojętnie w jakiej kolejności) - wstawiony kod ich policzy.
Kod: | $ile = $db->sql_numrows($result); | To jest praktycznie cała modyfikacja - reszta to wywalenie wyniku na ekran. |
|
|
|
|
Gadatliwa Kasia
|
|
|
|
Azuel
Pomógł: 1 raz Posty: 69
|
Wysłany: 07-01-2013, 00:50
|
|
|
Wyczyściłem cache ręcznie z FTP prócz .htaccess oraz próbowałem czyścić przez PA, nic to nie dało.
Nadal zlicza podwójnie tych użytkowników i pokazuje dwukrotnie większą liczbę.
Raczej wszystko dobrze zrobiłem i pomyłek nie ma w index.php ale nie twierdzę że nie może się gryźć z czymś.
Załączam pliczek
Pozdrawiam. |
|
|
|
|
|
Nie możesz pisać nowych tematów Nie możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz głosować w ankietach Nie możesz załączać plików na tym forum Nie możesz ściągać załączników na tym forum
|
Dodaj temat do Ulubionych Wersja do druku
|
Kopiowanie wszelkich treści zawartych na forum, modyfikacji oraz instrukcji bez zgody administracji i autorów tematów/postów zabronione!
Powered by phpBB modified by Przemo © 2003 phpBB
| Strona wygenerowana w 0,12 sekundy. Zapytań do SQL: 13 | |
|
|