ForumCała strona

Nawigacja

Aktualnie online

Gości online: 43

Użytkowników online: 0

Łącznie użytkowników: 25,400
Najnowszy użytkownik: AlojzyBartek

Logowanie

Nazwa użytkownika

Hasło



Zarejestruj się

Odzyskaj hasło

Shoutbox

Musisz zalogować się, aby móc dodać wiadomość.

Zbigniew@
17.11.2024 11:33:24
Nie ten grzeszy kto pije, ale ten, kto się nie upije.

JazOOn
16.11.2024 20:46:18
tja

Zbigniew@
15.11.2024 18:58:17
Kto pije, ten nie bije.

JazOOn
31.10.2024 20:49:47
Kto pije?

piterus
30.10.2024 19:45:48
I będziemy śpiewać: "Kiedy 20 blisko, przebadaj wszystko, przebadaj wszystko..." Pfft

Pobierz nową wersję
Pobierz podręcznik
Zobacz inne oficjalne Supporty
Statystyki supportu
PHP-Fuson PL na Facebooku

RSS

Polecamy hosting SferaHost.pl

Zobacz temat

Polski Oficjalny Support PHP-Fusion » PHP-Fusion v5.00-v6.01 Support » Modyfikacje skryptów
 Drukuj temat
Możliwość przeczytania 10 artykułów dla gości więcej dla userów
Marcus Fenix
Witam czy mozna zrobić aby gość odwiedziający stronę mógł przeczytać tylko 10 artykułów, a potem wyświetlała się informacja o zalogowaniu się bądź rejestracji.

Za pomoc z góry dzięki.


PW od moderatora:
  1. Przeniesienie tematu - Pieka 02.12 - 00:27

Marc!us
 
ix360.pl
Wścibski Gość
Dodany dnia 24.11.2024 19:55:03
Pan Kontekstualny

Postów: n^x
Data rejestracji: Zawsze

Polecamy hosting SferaHost.pl
IP: localhost  
Grzes
Może ale pytanie jak będziemy przetrzymywać informację o tym że pan A przeczytał już te 10 artów. Za pomocą cookie? Można je wyczyścić. Za pomocą rozpoznawania IP (głupszy pomysł)? Po pierwsze NEO itp a po drugie sieci lokalne - na kilku(nastu) użytkowników przypada jedno IP.

Pytanie czy to ma sens.

Wersja oparta o cookies wygląda tak (prymitywne wykonanie ale jest trochę po północy a padam z nóg).
Zacznijmy od strony dodatkowej z stosonwą infomacją o limicie 10 artów na gościa. Napisz coś w niej mówiącej o tym by przeczytać więcej artykułów gość musi się zarejestrować.
Następnie plik readarticle.php.
Znajdziesz w nim linię (#47)
render_article($article_subject, $article[$rowstart], $article_info);


Przed nią dopisz:

if (iGUEST && $rowstart == 0) {
if (isset($_COOKIE['fusion_a'])) {
$cookie_arts = explode(".", $_COOKIE['fusion_a']);
if (count($cookie_arts) > 11) { fallback("viewpage.php?page_id=X"); }
}
$cookie_arts[] = ".".$article_id;
$cookie_exp = time() + 3600*24*30;
$cookie_value = implode(".", $cookie_arts);
setcookie("fusion_a", $cookie_value, $cookie_exp, "/", "", "0");
}


Sprawdź czy działa bo nie testowałem.

Zwróć uwagę na fragment " && $rowstart == 0". W tej chwili przechodzenie na kolejne strony artkułu nie będą limitowane ani zliczane jako kolejne czytania. Jeśli to usuniesz to otwarcie arta na dowolnej jego stronie także będzie zaliczone jako czytanie.
Upewnij się jeszcze co do samego limitu - ustawiłem tu > 11 bo explode podzieli łańcuch na elemnty a na początku bedzie kropka. Jesli jednak nie będzie to limit na 10 artów a wyszedł mi na 9 lub 11 to po prostu zmniejsz albo zwiększ tą liczbę.


Aktualizacja 2.12.2007 11:15
Poprawiłem kod.
Edytowane przez Grzes dnia 02.12.2007 11:17:04
Często najmądrzejszą odpowiedzią jest milczenie krzywy.gif
 
kulawy_waldek
Czy to można zastosować w dodatkowych stronach nieco modyfikując? Jak to zmodyfikować?
Edytowane przez kulawy_waldek dnia 02.12.2007 08:20:17
 
www.kasa.ddl2.pl
Marcus Fenix
:(

Niestety ale twoja modyfikacja nie działa.

Jak by co to ja daje moje zmodyfikowane readarticle.php. Ono jest zmodyfikowane OK ale moze jeszcze znajdzie się ktoś kto znajdzie jakiś błąd aby wszystko działało...

Pobierz kod źródłowy  Rozwiń Kod źródłowy

Marc!us
 
ix360.pl
Grzes
Poprawiłem kod w poprzednim poście. Teraz może będzie ok.


@kulawy_waldek:
Jeśli tylko w stronach dodatkowych to w pliku viewpage.php wstaw ten kod po
closetable();

Często najmądrzejszą odpowiedzią jest milczenie krzywy.gif
 
Marcus Fenix
Grin

Wszystsko działa !

Dzięki wielkie !
Marc!us
 
ix360.pl
kulawy_waldek
Zrobiłem tak jak powiedziałeś. Wstawiłem to w viewpage.php po
Pobierz kod źródłowy  Rozwiń Kod źródłowy
. Po 11 wejściach już się nie chcą ładować dodatkowe strony. Ujawnia się takie coś:
images32.fotosik.pl/72/a3ffcf569e24807e.jpg
 
www.kasa.ddl2.pl
djavid
Mam pytanko
Na jaki czas jest to ograniczenie?
Jak ustawić aby dziennie można było przeczytać powiedzmy te 10 artykułów. Po 24h znowu moge przeczytać tylko 10 art.
Domysłam się że chodzi o linie:
Pobierz kod źródłowy  Rozwiń Kod źródłowy

Nie znam się i nie wiem jak to jest przeliczane.
Z góry dzięki
"(...) i oczywiście guzik dla biedaków, bo tym będą zawsze tak dokopywać, że w dniu, kiedy g...no nabierze wartości, biedacy urodzą się bez d..y."
 
piotrek199214
Jest to czas 30 dni.
3600*24*30

60*60 = 1h * 24 = 1 dzień * 30 = 30 dni.
Pozdrawiam

Pomogłem Ci? Wystarczy podziękować i oznaczyć post jako pomocny pomogl[1]_1.png
Tanie tworzenie wtyczek, masz problem napisz.
 
www.piocom.eu
poki289
Co do limitu przeczytanych artykułów, to Grzes już o tym wspomniał.
Grzes napisał/a:
Upewnij się jeszcze co do samego limitu - ustawiłem tu > 11 bo explode podzieli łańcuch na elemnty a na początku bedzie kropka. Jesli jednak nie będzie to limit na 10 artów a wyszedł mi na 9 lub 11 to po prostu zmniejsz albo zwiększ tą liczbę.

 
www.add-ons.pl
djavid
Przepraszam Was ale albo jestem zmęczony już albo nie kumam dziś.
Rozumiem że w tej chwili ustawione jest, że raz na miesiąc może przeczytać te 10 artów (o ile niw wyczyści cookie)

Jeżeli chce aby było na 24h (1 dobę) to jak ma wyglądać linia? Tak:
Pobierz kod źródłowy  Rozwiń Kod źródłowy

"(...) i oczywiście guzik dla biedaków, bo tym będą zawsze tak dokopywać, że w dniu, kiedy g...no nabierze wartości, biedacy urodzą się bez d..y."
 
piotrek199214
Tak ma wyglądać:
$cookie_exp = time() + 3600*24;


Pozdrawiam
Pomogłem Ci? Wystarczy podziękować i oznaczyć post jako pomocny pomogl[1]_1.png
Tanie tworzenie wtyczek, masz problem napisz.
 
www.piocom.eu
djavid
Podziękował, punkcik dla Ciebie piotrek199214
"(...) i oczywiście guzik dla biedaków, bo tym będą zawsze tak dokopywać, że w dniu, kiedy g...no nabierze wartości, biedacy urodzą się bez d..y."
 
Przejdź do forum:
Created by Arox Copyright (C) 2004
Copyright (C) 2004 - 2018 Ekipa PHP-Fusion.pl