Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#1  2010-02-21 03:18:59

  telos - Nowy użytkownik

telos
Nowy użytkownik
Zarejestrowany: 2010-02-21

Wyswietlanie zawartosci strony w zaleznosci od zalogowanego usera...

Witam!

Sprawa wyglada tak:

Mam na serwerku baze w postgresql'u, apache2 i wszelkie wtyczki php obslugujace mi baze od strony www.
Na stronie, powiedzmy 'uzytkownik wprowadzajacy' wprowadza do bazy przez formularz jakis tam tekst oraz podlacza do niego plik. Do bazy zapisywane sa jedynie te w/w teksty i odnosniki do miejsca gdzie pliki sie znajduja. Pliki sa zapisywane na serwerku w jakims katalogu. 'Uzytkownik przegladajacy' moze sobie przegladac wprowadzone teksy oraz pobierac pliki ze strony. To wszystko sobie dziala. I teraz pytanie:
Jak zrobic aby 'uzytkownik przegladajacy' po zalogowaniu sie na loginie A i hasle X mogl robic to co dotychczas czyli przegladac i sciagac te pliki, a np. inny 'uzytkownik przegladajacy' podajac login B i haslo Y mogl jedynie przegladac/czytac wprowadzony tekst ale nie mogl sciagac plikow (ale zeby widzial jaki plik zostal podlaczony np. zeby widzial nazwe pliku jedynie jako tekst a nie link do pliku). Jedyny pomysl jaki wpadl mi do glowy (jeszcze go niezrealizowalem) to ze moge htaccess'em zablokowac glowny katalog z plikami podlaczanymi i uzytkownik bedzie proszony o podanie prawidlowego loginu i hasla aby pobrac plik. Czy to jest wyjscie? Czy mozna jeszcze jakos inaczej sprawe zalatwic?


Ewentualnie jeszcze podobna sytuacjia (juz bez logowania do strony) aby uzytkownicy z lokalnej sieci w ktorej strona dziala mogli sciagac, jakis przegladacz spoza sieci juz nie mogl sciagac plikow.

Mam nadzieje, ze nie namieszalem za bardzo. Z gory dziekuje za pomysly...

Offline

 

#2  2010-02-21 09:22:36

  djjanek - Użytkownik

djjanek
Użytkownik
Skąd: whereis
Zarejestrowany: 2007-11-15
Serwis

Re: Wyswietlanie zawartosci strony w zaleznosci od zalogowanego usera...

A może tak w bazie dostawiasz znacznik pobieranie i w zależności o d tego znacznika dajesz linka lub sam tekst.

Offline

 

#3  2010-02-21 12:13:41

  telos - Nowy użytkownik

telos
Nowy użytkownik
Zarejestrowany: 2010-02-21

Re: Wyswietlanie zawartosci strony w zaleznosci od zalogowanego usera...

moglbys mi to przyblizyc bo dopiero zaczynam zabawe z postresem (w sumie z bazami). a mianowicie w ktory miejscu/momencie mam wstawic tez znacznik d?

Offline

 

#4  2010-02-21 12:20:42

  mariaczi - Użytkownik

mariaczi
Użytkownik
Zarejestrowany: 2007-10-02

Re: Wyswietlanie zawartosci strony w zaleznosci od zalogowanego usera...

Podczas generowania strony do wyświetlenia sprawdzasz jaki user jest zalogowany i w zależności od tego 'jaki' dodajesz link albo sam tekst. Nie bardzo wiem co więcej można tu tłumaczyć :(

Offline

 

#5  2010-02-21 20:18:25

  Minio - Użyszkodnik

Minio
Użyszkodnik
Skąd: Brno, Česko
Zarejestrowany: 2007-12-22
Serwis

Re: Wyswietlanie zawartosci strony w zaleznosci od zalogowanego usera...

w php:

Kod:

if (is_allowed($user, download)) {
    echo '<a href="sciezka">plik</a>';
} else {
    echo "plik";
}

Oczywiście musisz sobie napisać funkcję is_allowed która — w tym przypadku — będzie sprawdzała czy użytkownik podany jako pierwszy argument ma prawo do wykonywania akcji określonej jako drugi argument. W najgorszym wypadku możesz w niej na sztywno wpisać listę uprawnionych użytkowników i sprawdzać czy zawiera ona nazwę podanego użytkownika (in_array). Rozwiązanie mało elastyczne, ale ostatecznie wybór zależy od Twojej indywidualnej sytuacji — być może okaże się wystarczające, ponieważ środowisko jest dość stałe.


Spinnen Essen: [url=http://fluxboxpl.org/portal/]FluxboxPL[/url] [url=http://przepis-na-lo.pl/]Przepis na LibreOffice[/url]

Offline

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Możesz wyłączyć AdBlock — tu nie ma reklam ;-)

[ Generated in 0.008 seconds, 9 queries executed ]

Informacje debugowania

Time (s) Query
0.00009 SET CHARSET latin2
0.00004 SET NAMES latin2
0.00068 SELECT u.*, g.*, o.logged FROM punbb_users AS u INNER JOIN punbb_groups AS g ON u.group_id=g.g_id LEFT JOIN punbb_online AS o ON o.ident='3.133.151.20' WHERE u.id=1
0.00185 UPDATE punbb_online SET logged=1716804072 WHERE ident='3.133.151.20'
0.00039 SELECT * FROM punbb_online WHERE logged<1716803772
0.00064 SELECT t.subject, t.closed, t.num_replies, t.sticky, f.id AS forum_id, f.forum_name, f.moderators, fp.post_replies, 0 FROM punbb_topics AS t INNER JOIN punbb_forums AS f ON f.id=t.forum_id LEFT JOIN punbb_forum_perms AS fp ON (fp.forum_id=f.id AND fp.group_id=3) WHERE (fp.read_forum IS NULL OR fp.read_forum=1) AND t.id=16169 AND t.moved_to IS NULL
0.00030 SELECT search_for, replace_with FROM punbb_censoring
0.00164 SELECT u.email, u.title, u.url, u.location, u.use_avatar, u.signature, u.email_setting, u.num_posts, u.registered, u.admin_note, p.id, p.poster AS username, p.poster_id, p.poster_ip, p.poster_email, p.message, p.hide_smilies, p.posted, p.edited, p.edited_by, g.g_id, g.g_user_title, o.user_id AS is_online FROM punbb_posts AS p INNER JOIN punbb_users AS u ON u.id=p.poster_id INNER JOIN punbb_groups AS g ON g.g_id=u.group_id LEFT JOIN punbb_online AS o ON (o.user_id=u.id AND o.user_id!=1 AND o.idle=0) WHERE p.topic_id=16169 ORDER BY p.id LIMIT 0,25
0.00088 UPDATE punbb_topics SET num_views=num_views+1 WHERE id=16169
Total query time: 0.00651 s