phpBB2 by Przemo
Support forów phpBB2 modified by Przemo

FAQFAQ - PIERWSZA POMOC!!  regulaminREGULAMIN  SzukajSZUKAJ  UżytkownicyUżytkownicy  GrupyGrupy  StatystykiStatystyki
RejestracjaRejestracja  ZalogujZaloguj  DownloadDownload  katalog Forów DyskusyjnychKatalog Forów   FAQ Video tutoriale

Poprzedni temat «» Następny temat
Wydajnosc portalu - rzecz bardzo ważna
Autor Wiadomość
bluesman

Posty: 3
Wysłany: 24-09-2004, 09:06   Wydajnosc portalu - rzecz bardzo ważna

Witam
Dlaczego po wyrzuceniu wszystkiego z portalu lacznie z wyswietlaniem niusow dalej wykonywane sa zapytania do bazy?i to w takiej ilosci okolo 1750 wyglada na to jakby portal wykonywal zapytanie w stylu kto byl w ciagu 24h na forum. Tymczasem główna strona forum wykonuje zaledwie 121 zapytań.
Pozdrawiam
Bluesman
 
     
Gadatliwa Kasia 

   
Przemo



Pomógł: 210 razy
Posty: 3148
Wysłany: 24-09-2004, 12:16   

Nie bic, nie bi?... :) Portal to byl pojedynczy niekontynuowany experyment, byl napisany kiepsko i obciazal strasznie, w kolejnych poprawkach poprawilem ra??ce błądy ale dalej portal nie jest zoptymalizowany. Postaram sie w poprawce 10 cos zrobic.
 
     
Widmo



Pomógł: 180 razy
Posty: 2435
Wysłany: 24-09-2004, 12:30   

wydalo sie - :P
_________________
Potrzebujesz pomocy?
 
     
bluesman

Posty: 3
Wysłany: 24-09-2004, 13:26   

Kod:
$custom_footer = $portal_config['portal_footer_body'];
$time_now = time();
$time1Hour = $time_now-3600;
$minutes = date('is', $time_now);
$hour_now = $time_now - (60 * ($minutes[0] . $minutes[1])) - ($minutes[2] . $minutes[3]);
$dato = create_date('H', $time_now,$board_config['board_timezone']);
$timetoday = $hour_now - (3600 * $dato);

$sql = "SELECT session_ip, MAX(session_time) as session_time FROM " . SESSIONS_TABLE . "
     WHERE session_user_id = '" . ANONYMOUS . "'
     AND session_time >= " . ( time() - 86400 ) . "
     GROUP BY session_ip";

if ( !$result = $db->sql_query($sql))
{
     message_die(GENERAL_ERROR, 'Couldn\'t retrieve guest user today data', '', __LINE__, __FILE__, $sql);
}

while( $guest_list = $db->sql_fetchrow($result))
{
     if ( $guest_list['session_time'] > $time1Hour )
     {
          $users_lasthour++;
     }
}
$guests_today = $db->sql_numrows($result);

$time_to_show = ( time() - ( $board_config['last_visitors_time'] * 3600 ) );

$sql = "SELECT user_id, username, user_allow_viewonline, user_level, user_lastvisit FROM " . USERS_TABLE . "
     WHERE user_id != '" . ANONYMOUS . "'
     AND user_session_time >= $time_to_show
     ORDER BY user_level DESC, username ASC";
if ( !$result = $db->sql_query($sql) )
{
     message_die(GENERAL_ERROR, 'Couldn\'t retrieve user today data', '', __LINE__, __FILE__, $sql);
}

while( $todayrow = $db->sql_fetchrow($result))
{
     $style_color = '';
     if ( $todayrow['user_lastvisit'] >= $time1Hour )
     {
          $users_lasthour++;
     }

     if ( $todayrow['user_level'] == ADMIN )
     {
          $todayrow['username'] = '<b>' . $todayrow['username'] . '</b>';
          $style_color = 'style="color:#' . $theme['fontcolor3'] . '"';
     }
     else if ( is_jr_admin($todayrow['user_id']) )
     {
          $todayrow['username'] = '<u><b>' . $todayrow['username'] . '</b></u>';
          $style_color = 'style="color:#' . $theme['fontcolor2'] . '"';
     }
     else if ( is_mod($todayrow['user_id']) )
     {
          $todayrow['username'] = '<b>' . $todayrow['username'] . '</b>';
          $style_color = 'style="color:#' . $theme['fontcolor2'] . '"';
     }

     $users_today_list .= ($todayrow['user_allow_viewonline']) ? ' <a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $todayrow['user_id']) . '"' . $style_color  . '>' . $todayrow['username'] . '</a>,' : (($userdata['user_level']==ADMIN) ? ' <a href="' . append_sid("profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . "=" . $todayrow['user_id']) . '"' . $style_color  . '><i>' . $todayrow['username'] . '</i></a>,' : '');
     if ( !$todayrow['user_allow_viewonline'] )
     {
          $logged_hidden_today++;
     }
     else
     {
          $logged_visible_today++;
     }
}

if ( $users_today_list )
{
     $users_today_list[ strlen( $users_today_list)-1] = ' ';
}
else
{
     $users_today_list = $lang['None'];
}
$total_users_today = $db->sql_numrows($result) + $guests_today;

$users_today_list = $users_today_list;
$l_today_r_user_s = ($logged_visible_today) ? ( ( $logged_visible_today == 1 ) ? $lang['Reg_user_total'] : $lang['Reg_users_total'] ) : $lang['Reg_users_zero_total'];
$l_today_h_user_s = ($logged_hidden_today) ? (($logged_hidden_today == 1) ? $lang['Hidden_user_total'] : $lang['Hidden_users_total'] ) : $lang['Hidden_users_zero_total'];
$l_today_g_user_s = ($guests_today) ? (($guests_today == 1) ? $lang['Guest_user_total'] : $lang['Guest_users_total']) : $lang['Guest_users_zero_total'];
$l_today_users = sprintf($l_today_user_s, $total_users_today);
$l_today_users .= sprintf($l_today_r_user_s, $logged_visible_today);
$l_today_users .= sprintf($l_today_h_user_s, $logged_hidden_today);
$l_today_users .= sprintf($l_today_g_user_s, $guests_today);

$forum_data = array();

Moze sie myle ale podejrzewam ze blad może byc tutaj i bez wzgledu czy wylaczymy userow ktorzy pojawili sie na forum w ciagu 24h oni sa nadal przeliczani.
 
     
Przemo



Pomógł: 210 razy
Posty: 3148
Wysłany: 24-09-2004, 13:35   

bluesman, Zgadza sie, poprawilem portal i wszystkie rzeczy, ktore nie sa wyswietlane nie beda teraz pobierane z bazy. Jednak sprawdzalem tutaj na forum i w moim portalu ilosc zapytan do bazy to 134 Jakim cudem u Ciebie jest 1700 ?
Sciagnij nowy plik portal.php i sprawdz

portal.zip
Pobierz Plik ściągnięto 584 raz(y) 9,24 KB

 
     
bluesman

Posty: 3
Wysłany: 24-09-2004, 13:46   

ja ustawilem przedzial na 96 godzin i bylo troche userow do podliczenia tymczasowo zmienilem przedzial czasowy na 0 i to pomoglo.

[ Dodano: 24-09-2004, 13:52 ]
Jezeli jestesmy przy portalu to pytanie gdzie mozna by znalesc te bloki ktore wyswietlaja ostatnie fotki z albumu?Problem polega na tym ze fotki po nacisnieciu na minatrke sa wyswietlane w osobnym oknie a wedlug mojego gustu link powinien nas przenosic do oryginalu fotki.
Pozdrawiam
Bluesman
 
     
spid

Posty: 15
Wysłany: 25-12-2004, 15:32   

A co może byc przyczyną tego że jak wchodze na portal.php to moim oczom ukazuje sie taka informacja ?
Mam blisko 2000 użytkowników czyżby wszystkich przelicza?? Zmiana nazwy pliku portal.php na portal_.php chyba nie wpływa na to :)
(phpBb by Przemo 1.8 )
Kod:

   
Couldn't retrieve guest user today data

DEBUG MODE

SQL Error : 1030 Got error 134 from table handler

SELECT session_ip, MAX(session_time) as session_time FROM phpbb_sessions WHERE session_user_id = '-1' AND session_time >= 1103897919 GROUP BY session_ip

Line : 168
File : /moj_ katalog/portal_.php
 
     
Widmo



Pomógł: 180 razy
Posty: 2435
Wysłany: 25-12-2004, 15:41   

spid napisał/a:
File : /moj_ katalog/portal_.php


a wez normalnie na portal.php

Sprawdz tabele i je napraw
_________________
Potrzebujesz pomocy?
 
     
spid

Posty: 15
Wysłany: 25-12-2004, 15:51   

Dzięki Widmo, działa, az mi głupi że na to niewpadłem. swojądroga ciężkie jest życie admina w czasie przebudowy forum phpBB i setek chętnych go podejrze?:)
 
     
Widmo



Pomógł: 180 razy
Posty: 2435
Wysłany: 25-12-2004, 19:36   

daj na poczatku portalu takie co?:

Kod:
session_start();
ob_start();

if ( $do == 'show')
{ setcookie('stan', 'show'); echo '<META HTTP-EQUIV="Refresh" CONTENT="0; URL=potral.php">'; }

if ( $stan != 'show' )
{ echo 'Przebudowa...'; exit; }

if ( $do == 'hide' )
{ setcookie('stan', 'null'); session_destroy(); echo '<META HTTP-EQUIV="Refresh" CONTENT="0; URL=portal.php">'; }


jak bedziesz chcial pracowac, wejdz na portal.php?do=show
jka bedziesz chcial sie wylogowac wejdz na: portal.php?do=hide

dziala na cookisach - nie testowalem czy dziala,
nie jest to idealne zabezpieczenie ale skuteczne...
_________________
Potrzebujesz pomocy?
 
     
Crack



Pomógł: 136 razy
Posty: 1442
Wysłany: 26-12-2004, 21:41   

Tak, działa ale tylko na osob? która weszła na ten adres.
_________________
[ DumpLoader 1.0 ] [ Spider Friendly 1.3.12 Google Sitemaps 1.4 ]
[ Tanuki: recenzje anime | forum ]
 
     
Gadatliwa Kasia 

   
Widmo



Pomógł: 180 razy
Posty: 2435
Wysłany: 27-12-2004, 01:53   

Crack napisał/a:
Tak, działa ale tylko na osob? która weszła na ten adres.

powiedzial ze chce ukryc strone przed innymi :)

jak skonczy robote nad portalem to wykasuje ten kod :)
_________________
Potrzebujesz pomocy?
 
     
Wyświetl posty z ostatnich:   
Odpowiedz do tematu
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
Możesz ściągać załączniki na tym forum
Dodaj temat do Ulubionych
Wersja do druku

Skocz do:  

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,2 sekundy. Zapytań do SQL: 13
Polecane serwisy

Najlepsze oprogramowanie do prowadzenia sklepu internetowegoNajlepszy program do sklepu firmowany przez Przem'a

Sklep z gadżetami

mediaclick.pl

serwis laptopów

phpbb

Polisy Ubezpieczeniowe TU Europa

Design Cart - Tworzenie sklepu internetowego

dnirozwoju.pl

Ranking Hostingów HostingOnline.pl

• Zamów reklamę