wisch: Hallo, danke nochmal ...und noch eine kurze Verständnisfrage :D

Beitrag lesen

Hallo Andi,

mal andersherum gefragt: Wie wurde denn bisher die Anzeige, also der php-Aufruf, der die HTML-Seite produziert, geschützt? Der Aufruf für die Bilder muss dann nicht besser geschützt sein.

Wenn Du mit einer Session arbeiten willst, versuch doch mal folgendes (zu knacken 😉):

In der Seite mit dem HTML:

<?php
 session_start();
 $id = session_id();
 ?>
<img src="./showPic.php?name=Bild1&S=<?=$id?>">

in showPic.php:

 session_start();
 $id = session_id();
 if (array_key_exists("S",$_GET)){
    if ($_GET['S'] == $id) $ergebnis="gut"; // Jetzt das Bild anzeigen
    else $gleiche_session="Fehlermeldung"; 
 }
 else $ergebnis="kein Aufruf aus der Seite"; // leere Rückgabe 
 ?>

Auf ein Redirect würde ich verzichten, weil es ja ein Bild in der Seite ist. Stattdessen würde ich als Fehlermeldung ein Bild mit dem Text "Bitte Cookies aktivieren" zurück liefern. Wenn der S-Parameter im Aufruf fehlt, braucht der Aufrufende auch keine Fehlermeldung 😟.

Der Nachteil bei dieser Lösung ist, dass die Session-ID im Cookie PHPSESSID gespeichert wird. Wenn Cookies komplett gesperrt sind, funktioniert es nicht.

Viele Grüße

Wilfried