|
|
phpBB2 by Przemo
Support forów phpBB2 modified by Przemo
|
|
Przesunięty przez: Matteo 09-11-2013, 09:37 |
Wyświetlenia profilu |
Autor |
Wiadomość |
NineX
Pomógł: 546 razy Posty: 1983
|
Wysłany: 11-08-2010, 10:38 Wyświetlenia profilu
|
|
|
Wyświetlenia profilu
Cytat: | ############################################################################
## MOD Title: Wyświetlenia profilu
## MOD Author: NineX
## MOD Description: Pokazuje ile razy profil został odwiedzony.
## MOD Version: 1.0.5
##
## Installation Level: Easy
## Installation Time: ~3 minuty
## License: GPL2
## Files To Edit: 4
## includes/constants.php
## includes/usercp_viewprofile.php
## language/lang_polish/lang_main.php
## templates/*/profile_view_body.tpl
##
############################################################################ |
|
|
|
|
|
Gadatliwa Kasia
|
|
|
|
sebul00000
Pomógł: 23 razy Posty: 451
|
Wysłany: 11-08-2010, 11:07
|
|
|
A jak to się ma na odświeżanie? Blokuje to jakoś czy nie? |
_________________ Za niewielką opłatą (przy mniejszych zleceniach, możliwość zapłaty smsem) robię wszystko (no może prawie wszystko ) co jest związane ze skryptem forum phpBB2 by Przemo, między innymi instalacja skryptu przema, wgrywanie modów, itp. |
|
|
|
|
NineX
Pomógł: 546 razy Posty: 1983
|
Wysłany: 11-08-2010, 11:26
|
|
|
sebul00000 napisał/a: | A jak to się ma na odświeżanie? Blokuje to jakoś czy nie? |
Niestety nie, dopiero przy kolejnej aktualizacji będzie blokować. |
|
|
|
|
sebul00000
Pomógł: 23 razy Posty: 451
|
Wysłany: 11-08-2010, 12:41
|
|
|
NineX, no to czekam(y?) na tą aktualizację Ogólnie dobrze by było, żeby blokowało tylko na jakiś określony czas, czyli, np. raz dziennie ten sam user wchodząc w dany profil dodawał by do licznika +1, ale jakby już, np. w jednym dniu wchodził dwa razy do profilu to i tak licznik zwiększył by się tylko o 1. |
_________________ Za niewielką opłatą (przy mniejszych zleceniach, możliwość zapłaty smsem) robię wszystko (no może prawie wszystko ) co jest związane ze skryptem forum phpBB2 by Przemo, między innymi instalacja skryptu przema, wgrywanie modów, itp. |
|
|
|
|
NineX
Pomógł: 546 razy Posty: 1983
|
Wysłany: 11-08-2010, 14:36
|
|
|
sebul00000, gotowe, załącznik zaktualizowany. |
|
|
|
|
sebul00000
Pomógł: 23 razy Posty: 451
|
Wysłany: 11-08-2010, 15:16
|
|
|
No działa. Licznik poprawnie się wyświetla dopiero po drugim wejściu w profil. A co do paczki to popraw, bo dwa razy jest w folderze
[ Dodano: Sro 11 Sie, 10 17:15 ]
Jeszcze co do tego poprawnego wyświetlania licznika... Zauważyłem, że zawsze trzeba drugi raz wejść w profil, żeby licznik pokazywał poprawne dane, bo nawet jeśli ktoś wejdzie w jakiś profil po czym wyjdzie, to później jak wejdzie się innym profilem do tego samego konta to licznik dalej pokazuje liczbę, jakby nikt wcześniej nie zaglądał do danego profilu. |
_________________ Za niewielką opłatą (przy mniejszych zleceniach, możliwość zapłaty smsem) robię wszystko (no może prawie wszystko ) co jest związane ze skryptem forum phpBB2 by Przemo, między innymi instalacja skryptu przema, wgrywanie modów, itp. |
|
|
|
|
NineX
Pomógł: 546 razy Posty: 1983
|
Wysłany: 11-08-2010, 18:32
|
|
|
sebul00000, po prostu nie chciałem robić więcej zapytań.
Załącznik zaktualizowany. |
|
|
|
|
sebul00000
Pomógł: 23 razy Posty: 451
|
Wysłany: 12-08-2010, 00:22
|
|
|
No teraz już działa wszystko jak należy, tylko ciekawe jak z obciążeniem serwera... ale chyba nie jest aż tak źle |
_________________ Za niewielką opłatą (przy mniejszych zleceniach, możliwość zapłaty smsem) robię wszystko (no może prawie wszystko ) co jest związane ze skryptem forum phpBB2 by Przemo, między innymi instalacja skryptu przema, wgrywanie modów, itp. |
|
|
|
|
maminowiec
Pomógł: 551 razy Posty: 1729
|
Wysłany: 12-08-2010, 09:52
|
|
|
Kod: | $sql1 = "SELECT time1, (SELECT count(*) FROM " . VISIT_TABLE . " WHERE to1=" . $profiledata['user_id'] . ") AS total FROM " . VISIT_TABLE . " WHERE from1=" . $userdata['user_id'] . " AND to1=" . $profiledata['user_id'] . " ORDER BY id DESC";
$result1 = $db->sql_query($sql1);
$row1 = $db->sql_fetchrow($result1);
if(time()-3600*24 > $row1['time1'])
{
$sql = "INSERT INTO " . VISIT_TABLE . " (`from1`, `to1`, `time1`) VALUES (" . $userdata['user_id'] . ", " . $profiledata['user_id'] . ", " . CR_TIME . ")";
if(!($result = $db->sql_query($sql)))
{
message_die(GENERAL_ERROR, 'Couldnt Query user private gallery info', '', __LINE__, __FILE__, $sql);
}
if($result)
{
$sql1 = "SELECT time1, (SELECT count(*) FROM " . VISIT_TABLE . " WHERE to1=" . $profiledata['user_id'] . ") AS total FROM " . VISIT_TABLE . " WHERE from1=" . $userdata['user_id'] . " AND to1=" . $profiledata['user_id'] . " ORDER BY id DESC";
$result1 = $db->sql_query($sql1);
$row1 = $db->sql_fetchrow($result1);
}
} |
ja bym sie kłócił co do optymalizacji
czyli tak
najpierw wybieramy time1 , czyli czas
później dajemy kolejnego selcta do policzenia łącznie wizyt
i teraz sprawdzamy czy można dodać +1 do wyświetlenia
if(time()-3600*24 > $row1['time1'])
{
tu dodawanie kolejnego rekordu do bazy
}
zapytanie jest złe , po co pchać selecta w selecta ?
jesli czas sie zgadza to dodajemy kolejny rekord do bazy
teraz prosta matematyka
na forum jest 10 tys userów
niech by 100 osób odwiedzało ok 1000 profili więc do bazy leci 10000 rekordów
teraz 10000 * 31 = 31000 rekordów w bazie przez miesiąc
na localu przy 10000 tys rekordów
Kod: | Strona wygenerowana w 0,12 sekundy. Zapytań do SQL: 15 |
bez tego
Kod: | Strona wygenerowana w 0,07 sekundy. Zapytań do SQL: 12 |
dla 31000 tys rekordów
Kod: | Strona wygenerowana w 0,43 sekundy. Zapytań do SQL: 13 |
a dla miliona rekordów
Kod: | Strona wygenerowana w 1,85 sekundy. Zapytań do SQL: 13 |
wniosek , po roku czasu na forum nie wejdziemy
jest to testowane na localu , a więc na dobrym sprzęcie , strach pomyśleć co by było na zwykłym serwerze gdzie do bazy na sekunde jest ładowane kilkanaście zapytań |
_________________ Ebooki do pobrania |
|
|
|
|
NineX
Pomógł: 546 razy Posty: 1983
|
Wysłany: 12-08-2010, 13:50
|
|
|
maminowiec, optymalizacja gotowa.
Załącznik zaktualizowany. |
|
|
|
|
sebul00000
Pomógł: 23 razy Posty: 451
|
Wysłany: 12-08-2010, 14:45
|
|
|
Działa, ale ja nie mam tego info w ile sekund wyświetla się strona i ile zapytań, więc co do działania optymalizacji się nie wypowiem. |
_________________ Za niewielką opłatą (przy mniejszych zleceniach, możliwość zapłaty smsem) robię wszystko (no może prawie wszystko ) co jest związane ze skryptem forum phpBB2 by Przemo, między innymi instalacja skryptu przema, wgrywanie modów, itp. |
|
|
|
|
maminowiec
Pomógł: 551 razy Posty: 1729
|
Wysłany: 12-08-2010, 15:21
|
|
|
sebul00000, to sobie włącz w PA |
_________________ Ebooki do pobrania |
|
|
|
|
NineX
Pomógł: 546 razy Posty: 1983
|
Wysłany: 12-08-2010, 15:29
|
|
|
5 zapytań zamieniłem na 3, więc na pewno lepiej. |
|
|
|
|
sebul00000
Pomógł: 23 razy Posty: 451
|
Wysłany: 12-08-2010, 15:33
|
|
|
maminowiec, nie w każdym stylu włączenie w PA coś daje Chyba wiesz o co chodzi... Jak dla mnie mod może iść już do gotowców, no chyba, że jest coś jeszcze do poprawienia. |
_________________ Za niewielką opłatą (przy mniejszych zleceniach, możliwość zapłaty smsem) robię wszystko (no może prawie wszystko ) co jest związane ze skryptem forum phpBB2 by Przemo, między innymi instalacja skryptu przema, wgrywanie modów, itp. |
|
|
|
|
Gadatliwa Kasia
|
|
|
|
maminowiec
Pomógł: 551 razy Posty: 1729
|
Wysłany: 12-08-2010, 15:33
|
|
|
A czy nie lepiej zrobić to na plikach cookie ? ? |
_________________ Ebooki do pobrania |
|
|
|
|
|
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,11 sekundy. Zapytań do SQL: 12 | |
|
|