@@Gunnar:
Das & sollte in HTML escapet sein:
<img src="./showPic.php?name=Bild1&S=<?=$id?>">
In einer URL trennt das &
die Parameter-Paare eines GET-Requests. Es wird also nicht escaped. Als Wert im Parameter müssen Sonderzeichen mit urlencode()
codiert werden. Aus & wird dann %26.
@@Andi:
Ich hab's "geschafft" 😟:
Eine neue PHÜ-Session erhält die ID aus dem PHPSESSION-Cookie, wenn eines existiert. Deshalb ist Deine Lösung mit einer Session-Variablen deutlich besser - hier in verfeinert:
<?php
session_start();
$id = session_id();
$_SESSION[$id] = "irgendwas";
?>
<img src="./showPic.php?name=Bild1&S=<?=$id?>">
und in showPic.php
<?php
session_start();
$id = session_id();
if (array_key_exists("S",$_GET)){
if (isset($_SESSION[$_GET['S']])) $ergebnis="gut"; // Bild anzeigen
else
if ($_GET['S'] == $id) $ergebnis="Session abgelaufen"; // Bitte Seite neu laden
else $ergebnis="Cookie fehlt"; // Bitte Cookies aktivieren
}
else $ergebnis="ungültiger Aufruf"; // nichts liefern
Die Fehlerbmeldungen in Bildern, damit sie sofort angezeigt werden.
Alles klar?
Viele Grüße
Wilfried
@@Gunnar: Ich beschränke mich auf das für das Thema unverzichtbare😉.