Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> 2 pytania = sesja + cos jeszcze :)
Arkon
post 27.05.2004, 08:49:41
Post #1





Grupa: Zarejestrowani
Postów: 38
Pomógł: 0
Dołączył: 12.02.2004

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


Witam. Mam takie pytanko.
Jak ustawić sesje, żeby była widoczna dla wszystkich subdomen i domeny głównej? W tej chwili sesja otwarta na www.domena.pl nie jest juz dostepna na pomoc.domena.pl itp. Oczywiscie cala domena jest moja.
2. Jak w skuteczny sposob mozna sprawdzac czy posty na forum byly przez nas juz czytane. Cos tekiego jak na phpBB. Tak sobie wymyslilem, ze jesli data ostatniego zalogowania byla wczesniej niz napisany post to temat bedzie nie przeczytany. Tylko jak potem oznaczyc go jako przeczytany. Przeciez nie bede robil tabeli z wszystkimi postami i userami a jesli sie juz ktos zaloguje nastepnym arzem to odznaczy wszystkie jako przeczytane sad.gif POMOCY!
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
scanner
post 28.05.2004, 07:37:59
Post #2





Grupa: Zarząd
Postów: 3 503
Pomógł: 28
Dołączył: 17.10.2002
Skąd: Wrocław




Cytat
Zgodnie z zaleceniem scannera.
Powiedzmy ze zapisuje nieczytane watki w bazie danych. Jesli ktos jest zalogowany to w odpowiedniej dla niego tabeli sprawdza dane. Zalozmy ze zapisze je w takiej formie: #id_postu# i potem jesli user wejdzie gdzies gdzie jest cos takeigo wyswietlane to potraktowac to
str_replace("#$id_postu#","",$nieczytane) czy jest jakis lepszy sposob? Albo jak te nie odwiedzone posty  trzymac w bazie zeby miec mozliwosc usuwania wszystkich z kategorii tak jak pisal scanner?
Wstęp do implementacji:[php:1:5beb4e5a8e]<?php
// wyciagamy nieczytane posty z bazy:
$resSQLResults = mysql_query( 'SELECT post_id FROM posts WHERE post_date > users.last_activity' );
while( $arrRow = mysql_fetch_row( $resSQLResults ) )
{
$_SESSION['Unreaded'][] = $arrRow['id'];
}


// wyswietlajac posta, robimy taki myk:
$resSQLResults = mysql_query( 'SELECT * FROM posts WHERE .....' );
while( $arrRow = mysql_fetch_row( $resSQLResults ) )
{
// usuwany z tablicy nieprzeczytanych
if( ( $intKey = array_search( $arrRow['post_is'], $_SESSION['Unreaded']) ) !== false )
{
unset( $_SESSION['Unreaded'][$intKey] );
// tutaj mozemy tez wstawic wyswitlenie ikonki przy danym poscie oznaczajacej "nieczytane"
}
}

//Na samym koncu skryptu, zapisujemy nopwy czas aktywnoci jako NOW() smile.gif
?>[/php:1:5beb4e5a8e]


--------------------
scanner.info
Warto pamiętać: KISS, DRY
Go to the top of the page
+Quote Post

Posty w temacie


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 Wersja Lo-Fi Aktualny czas: 14.08.2025 - 16:49