• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Grafiken sicher anzeigen

jonathan09

Neues Mitglied
Hallo zusammen!

Dieses Thema könnte auch in anderen Bereichen (z.B. PHP) erstellt werden, ich packe es aber mal hier rein.

Ich habe auf meiner Website ein umfangreiches Login-System erstellt (mit PHP), jeder Benutzer hat Zugnag zu unterschiedlichen Informationen. Nun möchte ich angemeldeten Usern auch Grafiken zur Verfügung stellen (nicht als Download, sondern auf der Website per HTML <img src....> eingebunden). Diese Grafiken müssen in einem mit htaccess geschützten Verzeichnis liegen, damit Zugriff von außen verhindert wird.

Wie kann ich diese Grafiken den Benutzern nun zur Verfügung stellen, ohne dass diese die Zugangsdaten eingeben müssen? Können diese per Code automatisch im Hintergrund übermittelt werden? Kann das Speichern der Grafiken im Cache des Browsers verhindert werden?

Ich möchte halt einfach, dass die Grafiken nur NUR angezeigt werden können, wenn der Benutzer auf meiner Website eingeloggt ist.

Ich hoffe, Ihr habt ein paar Ideen, ich komme hier nicht weiter...

VG

jonathan
 
Das ist mit Sicherheit eine PHP-Frage, daher habe ich deinen Beitrag gleich mal dorthin verschoben. Mit HTML ist das definitiv nicht möglich, da HTML keine Serverzugänge oder Logins verwalten kann.

Was Du suchst würde ich über folgenden Weg realisieren:
Packe alle zu schützenden Dateien entweder in einen Ordner außerhalb des Web-Verzeichnisses oder in einen mit htaccess geschützten Ordner.
Erstelle eine PHP-Datei der Du beim Aufruf ein Kennzeichen übergibst, welches dem Script sagt, welches Bild ausgegeben werden soll.
HTML:
<img src="bild.php?file=bild.jpg" alt="">

In dem Script fügst Du nun deine Loginprüfung ein.
Wenn das Script feststellt, der Nutzer der es ausruft ist nicht eingeloggt, gibst Du einfach irgendein Platzhalterbild aus.
Wenn das Script feststellt, der Nutzer ist ordnungsgemäß eingeloggt dann lädst Du das übergeben Bild aus dem geschützten Verzeichnis ein und gibst es aus.
PHP:
$bild_content = file_get_contents("/pfad/zum/bild/".$file);
header("Content-type: image/jpeg");
echo $bild_content;
 
Zurück
Oben