Werken met bestanden in een ledensysteem
Ik ben een soort van ledensysteem aan het ontwikkelen. Daarin moeten gebruikers toegang hebben tot speciaal voor hen gecreëerde bestanden. Wat is de beste manier om dit via PHP en MariaDB te doen? Ik heb toegang tot veel andere soorten scripttalen, als dat nodig is, maar ik ken zelf alleen basis Python...
Alvast bedankt bij voorbaat.
Groeten, Jordy.
readfile de bestanden te openen. Let wel op de juiste headers.
Ik raad aan om de bestanden buiten de webroot te plaatsen, en na de toegangscontrole met Gewijzigd op 06/08/2017 10:01:45 door - Ariën -
het zijn trouwens pdf's...
bedankt voor de tip!!
Zie de genoemde URL ;)
Toevoeging op 06/08/2017 10:39:57:
ik begrijp het stuk met de headers niet... kan ik daarover meer lezen dan op http://php.net/header ? Daar vind je ook wel wat hoor, maar niet waar ik naar op zoek ben...
Ik neem niet graag klakkeloos over, ik begrijp het liever...
Het ligt eraan of je ze geforceerd wilt downloaden via een download dialoog-scherm of direct in de pdf-reader van de gebruiker wilt openen.
wel, openen in de pdf reader is goed. Wat het veiligst is voor de customer.
In andere gevallen raad ik deze header aan:
header("Content-type:application/pdf");
Dan wordt het bestand in de pdf-reader geopend.
Gewijzigd op 06/08/2017 11:00:43 door - Ariën -
Het is de bedoeling dat de gebruiker het sowieso gemakkelijk kan inkijken en eventueel kan opslaan.
Dan raad ik geforceerd aan via een dialoog d.m.v Example #1 op de readfile() pagina.
kan ik trouwens beide opties geven? Direct weergeven én downloaden?
Hoe werkt dat direct weergeven?
Ikzelf raad aan om het niet moeilijk te maken voor de gebruiker en voor 'geforceerd' te kiezen met de downloadpopup. Dan weet je zeker dat de gebruiker het wilt opslaan. Als je het direct in de PDF-reader wilt openen, heb je kans dat ze dat opslaan zullen vergeten.
Direct weergeven en downloaden kan overigens niet. Het blijven twee verschillende stappen die een gebruiker uit kan voeren bij het downloaden van een PDF.
Gewijzigd op 06/08/2017 11:16:17 door - Ariën -
Maar TS zegt "en eventueel kan opslaan". Als iemand alleen iets enkel wil inkijken is het simpelweg tonen een stap/click minder dan iemand eerst forceren iets te downloaden. Lijkt mij wat gebruiksvriendelijker. De gebruiker kan vervolgens altijd nog kiezen iets alsnog op te slaan.
Of de gebruiker laten kiezen tussen:
- Bekijken en zelf opslaan
- Downloaden en later bekijken.
Met een dialoogscherm geef je direct zonder gebruik van een PDF-reader de mogelijkheid om het op te slaan. En misschien hebben ze geen PDF-reader en willen ze het elders opslaan, om het later te kunnen bekijken.
Een dialoog blijft in mijn ogen de beste keuze.
Gewijzigd op 07/08/2017 01:23:01 door - Ariën -
En in het algemeen: ik vind dat het allebei moet beschikbaar zijn. en veel modernere browsers, zoals Chrome en Firefox hebben toch een PDF-reader aan boord, of ben ik hier mis in? Ik ken bijna niemand die nog Internet Explorer gebruikt... Nou, alleen heel wat blinden dan... (ik ben zelf ook blind, voor alle duidelijkheid)
Groetjes, Jordy.
Toevoeging op 07/08/2017 13:50:45:
Ariën, ik wordt niet echt veel wijzer van die pagina... Je bedoelt toch die he: http://php.net/header of was het een andere?
Die van readfile
Een dialoogvenster van de browser, bij een geforceerde download.
Dat is een download dialoogvenster...
ooh, ja zoiets, bedankt.
Graag gedaan :-)