Avatar billede SocialTau Nybegynder
04. oktober 2010 - 12:50 Der er 6 kommentarer og
1 løsning

Tvinge PHP script før fil læsning

Hej, er det muligt at når folk henter en fil fra en mappe fx:

www.random.com/users/enfil.zip

at inden man får lov til download så skal der checkes et php script?
formålet er selvfølgelig at begrænse hvem der har adgang til filen. Så man kan afvise folk der ikke er users

Selve checket skal gerne være så alle filer i en given mappe bliver checket af et php script.

På forhånd tak
Avatar billede wanze Nybegynder
04. oktober 2010 - 13:20 #1
Den smarteste måde er, at du tilgår alle filerne igennem et script. Det kan du gøre med noget lignende:
$id = $_GET['id'];
if (kriterie-for-at-hente-filen)
{
    header('Content-Length: '.filesize('./filer/'.$id));
    header('Content-Type: '.mime_content_type('./filer/'.$id));
    readfile('./filer/'.$id);
}

Derudover skal du blot sørge for, at brugerne ikke har direkte adgang til filerne i /filer/. Når du tilgår en fil, så kan du blot gøre det igennem get.php?id=enfil.zip, antaget at dit script hedder get.php.
Avatar billede SocialTau Nybegynder
04. oktober 2010 - 13:29 #2
hvordan sørger jeg for at de ikke har direkte adgang til filerne? er det vha .htacces? eller hvad har du af forslag?
Avatar billede wanze Nybegynder
04. oktober 2010 - 13:31 #3
Enten ved hjælp af .htaccess eller ved at lægge mappen /filer/ uden for din DocumentRoot.
Avatar billede SocialTau Nybegynder
04. oktober 2010 - 13:35 #4
cool,
hvis jeg gør det ved hjælp af .htacces (er ikke lige så skarp i emnet) skal php så også have adgangskoder dertil, eller omgår php det, da det er serverside?
Avatar billede SocialTau Nybegynder
04. oktober 2010 - 13:35 #5
evt. så aflever dit svar som et svar, så jeg kan lukke tråden :)
Avatar billede wanze Nybegynder
04. oktober 2010 - 13:42 #6
Det er PHP helt ligeglad med, ja. :)

Tak for point.
Avatar billede SocialTau Nybegynder
04. oktober 2010 - 13:47 #7
Det var da så lidt, tak for hurtigt svar - helt kanon!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester