php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Sonstiges > Off-Topic Diskussionen
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


Off-Topic Diskussionen Kein Platz für Deine Frage gefunden? Dann bist Du hier genau richtig!

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 24-08-2003, 16:47
Stephan666
 Junior Member
Links : Onlinestatus : Stephan666 ist offline
Registriert seit: Aug 2003
Beiträge: 76
Stephan666 ist zur Zeit noch ein unbeschriebenes Blatt
Standard Verzeichnis-Sicherheit

Ich will demnächst ne seite ins Internet stellen, und u.a. will ich einen Link auf Word-Dokumente setzen, der Link wird erst nach einer Art Login angezeigt.

Mit PHP hab ich ja die Möglichkeit, Scripte, die nicht innerhalb vom Home-Verzeichnisses liegen, einzubinden, bspw.


/htdocs ist Homeverzeichnis
/htdocs/pics Unterverzeichnis für Bilder
/htdocs/misc CSS-Dateien usw.

/private Verzeichnis für Klassen-Dateien


Auf das pics-Verzeichnis kann aber jeder Benutzer zugreifen.
Wie kann ich jetzt meine ach so wichtigen Word-Dokumente schützen?
Ein Link ins private-Verzeichnis scheint nicht zu funktionieren (zumindest bei mir daheim mit IIS und WinXP).
Mit Zitat antworten
freelancermap.de - IT Projektvermittlung für Selbständige und Freiberufler
  #2 (permalink)  
Alt 24-08-2003, 17:23
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 25.236
wahsaga befindet sich auf einem aufstrebenden Ast
Standard Re: Verzeichnis-Sicherheit

Zitat:
Original geschrieben von Stephan666
Ein Link ins private-Verzeichnis scheint nicht zu funktionieren (zumindest bei mir daheim mit IIS und WinXP).
der kann auch gar nicht funktionieren, wenn /htdocs das webroot ist.

über den browser kannst du nur auf /htdocs und darunter liegende verzeichnisse zugreifen.

du könntest aber deine dokumente in ein verzeichnis unterhalb von /htdocs ablegern, und dieses dann z.b. mit http-auth per .htaccess schützen ...
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #3 (permalink)  
Alt 24-08-2003, 17:48
Stephan666
 Junior Member
Links : Onlinestatus : Stephan666 ist offline
Registriert seit: Aug 2003
Beiträge: 76
Stephan666 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

.htaccess ist doch nur unter Linux / Apache möglich, soweit ich weiss.

Hab ich leider nicht zur Verfügung. Zumindest auf dem Webserver, den ich verwenden muss (kann ich leider nicht beeinflussen).

Gibts da eigentlich was mit htaccess vergleichbares für Windows-Umgebungen auch?
Mit Zitat antworten
  #4 (permalink)  
Alt 24-08-2003, 18:52
mrhappiness
 PHP Guru
Links : Onlinestatus : mrhappiness ist offline
Registriert seit: Oct 2002
Beiträge: 14.890
mrhappiness ist zur Zeit noch ein unbeschriebenes Blatt
mrhappiness eine Nachricht über AIM schicken mrhappiness eine Nachricht über Yahoo! schicken
Standard

du kannst mittels php auf dateien oberhalb des webroot zugreifen und sie einlesen oder direkt zum download anbieten
__________________
Ich denke, also bin ich. - Einige sind trotzdem...
Mit Zitat antworten
  #5 (permalink)  
Alt 24-08-2003, 20:40
Stephan666
 Junior Member
Links : Onlinestatus : Stephan666 ist offline
Registriert seit: Aug 2003
Beiträge: 76
Stephan666 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

ich weiss nicht ob ich das jetzt richtig verstanden hab.

Ich kann eine Datei zum Download anbieten und mit dabei PHP einlesen, d.h. sie ist nur dann zum Download verfügbar, wenn ich sie eingelesen hab, richtig?

Wie les ich die Datei ein, um das zu realisieren?

Wenn ich weiterhin einen Link fürs Downloaden anbiete, müsste die Datei ja innerhalb vom webroot liegen oder reingeschrieben werden....

Kann mir das mal einer bitte genauer beschreiben?
Mit Zitat antworten
  #6 (permalink)  
Alt 24-08-2003, 20:52
mrhappiness
 PHP Guru
Links : Onlinestatus : mrhappiness ist offline
Registriert seit: Oct 2002
Beiträge: 14.890
mrhappiness ist zur Zeit noch ein unbeschriebenes Blatt
mrhappiness eine Nachricht über AIM schicken mrhappiness eine Nachricht über Yahoo! schicken
Standard

du speicherst alle deine dateien um ordner /private

dann machst du in ner datenbank einen eintrag für die datei und machst auf der seite, die die dateien auflistet ne abfrage an die datenbank, liest die dateinamen aus und generierst die links

die links sollten so aussehen: download.php?id=<spalte id der tabelle inder datenbank>

die download.php speicherst du unter /htdocs, so dass sie vom browser aus erreichbar ist

in der download.php liest du den dateienamen aus, der zu $_GET['id'] (der übergebe parameter aus dem link) gehört und liest dann mit den dateifunktionen von, die im manual zu finden sind die datei aus
__________________
Ich denke, also bin ich. - Einige sind trotzdem...
Mit Zitat antworten
  #7 (permalink)  
Alt 24-08-2003, 21:29
Stephan666
 Junior Member
Links : Onlinestatus : Stephan666 ist offline
Registriert seit: Aug 2003
Beiträge: 76
Stephan666 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

hm, mit fopen und fread die Datei auslesen ist okay. Die Links aus der Datenbank zu nehmen ist eigentlich gar nicht nötig.

Aber wie kann man den Inhalt der Datei dann so ausgeben, dass das Dokument korrekt z.B. mit WinWord ausgegeben oder im Browser des Benutzers geöffnet wird?

Kommen da diese COM-Support-Funktionen ins Spiel? Dann wäre das - wenn ichs mal unter Linux laufen lassen möchte - wieder schlecht.
Mit Zitat antworten
  #8 (permalink)  
Alt 24-08-2003, 21:42
mrhappiness
 PHP Guru
Links : Onlinestatus : mrhappiness ist offline
Registriert seit: Oct 2002
Beiträge: 14.890
mrhappiness ist zur Zeit noch ein unbeschriebenes Blatt
mrhappiness eine Nachricht über AIM schicken mrhappiness eine Nachricht über Yahoo! schicken
Standard

such mal (auch hier im forum) nach header download
__________________
Ich denke, also bin ich. - Einige sind trotzdem...
Mit Zitat antworten
  #9 (permalink)  
Alt 24-08-2003, 22:27
Stephan666
 Junior Member
Links : Onlinestatus : Stephan666 ist offline
Registriert seit: Aug 2003
Beiträge: 76
Stephan666 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

d.h. der Link verweist dann auf ein Script ähnlich diesem:

PHP-Code:
header("Content-type: application/msword");

readfile("../private/doc.doc"); 
Mit Zitat antworten
  #10 (permalink)  
Alt 24-08-2003, 22:30
mrhappiness
 PHP Guru
Links : Onlinestatus : mrhappiness ist offline
Registriert seit: Oct 2002
Beiträge: 14.890
mrhappiness ist zur Zeit noch ein unbeschriebenes Blatt
mrhappiness eine Nachricht über AIM schicken mrhappiness eine Nachricht über Yahoo! schicken
Standard

ja

der richtige content-type steht übrigens in $_FILES['name des uploadfeldes im formular']['type']
__________________
Ich denke, also bin ich. - Einige sind trotzdem...
Mit Zitat antworten
  #11 (permalink)  
Alt 24-08-2003, 23:27
Stephan666
 Junior Member
Links : Onlinestatus : Stephan666 ist offline
Registriert seit: Aug 2003
Beiträge: 76
Stephan666 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

hat auch schon fast geklappt. Word wird geöffnet. Und meckert dann mit folgendem Fehler:

"Microsoft Word kann das angegebene Format nicht importieren.
Dieses Feature ist im Augenblick nicht installiert. Möchten Sie es jetzt installieren?"

Hier mal mein Quelltext:

PHP-Code:
header("Content-type: application/msword");

if (!isset(
$_GET["type"])){
    include(
"./nixwars.php");
    exit();
}

if (
$_GET["type"] == "1"){
    
readfile("../private/1.doc");
    exit();
}
elseif (
$_GET["type"] == "2"){
    
readfile("../private/2.doc");
    exit();
}
else{
    include(
"./nixwars.php");
    exit();

Ich schick dem Script per GET den Dokumentennamen mit.

Leider habsch grad meine original "Microsoft Office 2000 Premium CD" nicht zur Hand, um das fehlende Feature zu installieren und der Sache nachzugehen, sprich: nachzusehen, was dem WinWord fehlt.
Mit Zitat antworten
  #12 (permalink)  
Alt 25-08-2003, 09:30
mrhappiness
 PHP Guru
Links : Onlinestatus : mrhappiness ist offline
Registriert seit: Oct 2002
Beiträge: 14.890
mrhappiness ist zur Zeit noch ein unbeschriebenes Blatt
mrhappiness eine Nachricht über AIM schicken mrhappiness eine Nachricht über Yahoo! schicken
Standard

aufruf?

mach den header mal raus und lass dir in den if zweigen ausgeben was er macht
__________________
Ich denke, also bin ich. - Einige sind trotzdem...
Mit Zitat antworten
  #13 (permalink)  
Alt 25-08-2003, 11:12
Stephan666
 Junior Member
Links : Onlinestatus : Stephan666 ist offline
Registriert seit: Aug 2003
Beiträge: 76
Stephan666 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

hm, den Header ausgeben? Habs etwa mit
PHP-Code:
$header header("Content-type: application/msword");
echo 
$header
probiert, hatte ein leeres WordDoc zur Folge.

Verwende ich

$header = header();

meckert er wegen der fehlenden Argumente. Wie lass ich mir den ursprünglichen Header anzeigen??

Ich hab das "fehlende Feature" im WinWord jetzt drin.
Das richtige Dokument wurde danach mit dem falschen Dateinamen ausgegeben, etwa
"expensesform.php-1.doc" statt "Consultant************pensesform.doc"

Die Zahl im Dokumentennamen zählt er bei jedem Download um 1 hoch.
Mit Zitat antworten
  #14 (permalink)  
Alt 25-08-2003, 11:49
mrhappiness
 PHP Guru
Links : Onlinestatus : mrhappiness ist offline
Registriert seit: Oct 2002
Beiträge: 14.890
mrhappiness ist zur Zeit noch ein unbeschriebenes Blatt
mrhappiness eine Nachricht über AIM schicken mrhappiness eine Nachricht über Yahoo! schicken
Standard

header()

da steht auch wie du das mit dem dateinamen hinkriegst
__________________
Ich denke, also bin ich. - Einige sind trotzdem...
Mit Zitat antworten
  #15 (permalink)  
Alt 25-08-2003, 16:50
Stephan666
 Junior Member
Links : Onlinestatus : Stephan666 ist offline
Registriert seit: Aug 2003
Beiträge: 76
Stephan666 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

okay, danke! So einigermassen hab ich das hingekriegt. Ich hab des ganze von nem andern computer noch ausprobiert, da wollte auch WinWord nix weiter installieren und hat das Dokument anstandslos geöffnet. Scheint also hinzuhauen.

Wenn das Dokument direkt mit Word geöffnet wird anstatt gespeichert zu werden, konnt ich dem Word nicht abgewöhnen, den Dateinamen immer mit ner zahl zu versehen. Naja, wenn des Word unbedingt meint, nen besseren Dateinamen zu wissen als ich dann solls halt.

Das ist eher ein unwichtiges Detail.
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

PHP Marktplatz-Software
PHP Marktplatz-SoftwareEs hat sich viel getan! Die neue Version 7.5.9 unserer PHP Marktplatz-Software ebiz-trader steht ab sofort zur Verfügung.

28.10.2019 | Berni

Die RIGID-FLEX-Technologie
Die RIGID-FLEX-TechnologieDie sogenannte "Flexible Elektronik" , oftmals auch als "Flexible Schaltungen" bezeichnet, ist eine zeitgemäße Technologie zum Montieren von elektronischen Schaltungen.

06.12.2018 | Berni


 

Aktuelle PHP Scripte

SMT

Server Monitoring & Management Tool Das SMT wurde von einem Administrator für Administratoren entwickelt, es vereinfacht den Alltag in der klassischen Administration und Verwaltung. Mit dem SMT kannst Du alle Deine Server & Dienste verwalten und überwach

04.09.2020 palle_1977 | Kategorie: PHP
numaeks Web-Farbmixer

Die RGB-Farben lassen sich hier auf unterschiedliche Weise mischen. Zur Einstellung werden auch die Dreh- und Schieberegler mit Canvas verwendet. Gespeichert werden die Farben in einem Cookie.

04.09.2020 numaek | Kategorie: JAVASCRIPT/ Tools
phplinX-Erotikportal 4 ansehen phplinX-Erotikportal 4

Erweiterbares Portal speziell für Erotik mit den Modulen Webkatalog, Bannermanagement und Kleinanzeigenmarkt. Sämtliche Module können über einen einzigen Adminbereich verwaltet werden.

18.06.2020 Cosinus14 | Kategorie: PHP/ Anzeigenmarkt
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 07:42 Uhr.