Und nun noch eine kleine Suchaufgabe. Was fehlt in den nachfolgenden Zeilen?
print '
...
<img src="//src.selfhtml.org/dok.gif" width="15" height="10" alt="Seite" /> <a href="http://forum.de.selfhtml.org/?', $ENV{'REDIRECT_QUERY_STRING'}, '">Wechseln Sie in den allgemeinen Bereich um den verlinkten Artikel zu lesen.</a>
...
';
PHP kennt kein $ENV{'REDIRECT\_QUERY\_STRING'}. PHP war zwar mal aber sowas, aber ist eben gerade nicht mehr ein auf Perl basierendes Templatesystem.
Anmerkung: htmlentities sollte hier "tun" - nicht dass jemand Skripte oder CSS einfügt. Bei einer Änderung des Forums könnte aber eine "etwas feinfühligere" Bearbeitung des Query-Strings nötig werden:
~~~php
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Passwort benötigt</title>
<link rel="stylesheet" href="//src.selfhtml.org/selfhtml-fehler-2008-06-06.css" type="text/css" />
<link rel="shortcut icon" type="image/x-icon" href="//src.selfhtml.org/favicon.ico" />
</head>
<body id="fehler-template" class="fehler-inhalt">
<div class="fehler-rahmen">
<img src="//src.selfhtml.org/logo.gif" width="106" height="109" alt="" class="selfhtml-logo" />
<div class="teaser">Ein Fehler ist aufgetreten:</div>
<div class="errorcode">401</div>
<h1>Benutzerbereich</h1>
<div class="hilfe">
<p class="message">Der Benutzerbereich ist nicht öffentlich zugänglich. Bitte geben Sie ein korrektes Passwort ein, um fortzufahren.</p>
<p>Sie haben folgende Möglichkeiten:</p>
<form accept-charset="utf-8" action="http://suche.de.selfhtml.org/cgi-bin/such.pl" method="get">
<ul>
<?php
if (isset($_SERVER['REDIRECT_QUERY_STRING'])) {
print '
<li>
<img src="//src.selfhtml.org/dok.gif" width="15" height="10" alt="Seite" /> <a href="http://forum.de.selfhtml.org/?'.htmlentities($_SERVER['REDIRECT_QUERY_STRING']).'">Wechseln Sie in den allgemeinen Bereich um den verlinkten Artikel zu lesen.</a>
</li>
';
}
?>
<li>
<img src="//src.selfhtml.org/dok.gif" width="15" height="10" alt="Seite" /> <a href="" onclick="javascript:location.reload (); return false;">Laden Sie diese Seite neu</a>, um das Passwort erneut eingeben zu können.</a>
</li>
<li>
<input type="hidden" name="feld" value="alle" />
<input type="hidden" name="hits" value="100" />
<input type="hidden" name="case" value="on" />
<input type="hidden" name="index_1" value="on" />
<input type="hidden" name="index_2" value="on" />
<input type="hidden" name="index_3" value="on" />
<input type="hidden" name="index_4" value="on" />
<label for="suche_suchausdruck">Das SELFHTML-Webangebot durchsuchen: </label><input type="text" size="25" maxlength="255" name="suchausdruck" id="suche_suchausdruck" /> <input type="submit" value="Suche" />
</li>
<li>
Die Navigation von folgenen Hauptseiten aus nutzen:
<ul class="linklist">
<li><img src="//src.selfhtml.org/kap.gif" width="15" height="13" alt="Kapitel" /> <a href="http://de.selfhtml.org/">SELFHTML</a></li>
<li><img src="//src.selfhtml.org/kap.gif" width="15" height="13" alt="Kapitel" /> <a href="http://aktuell.de.selfhtml.org/">SELFHTML aktuell</a></li>
<li><img src="//src.selfhtml.org/kap.gif" width="15" height="13" alt="Kapitel" /> <a href="http://selfhtml.org/">Startseite zu SELFHTML</a></li>
<li><img src="//src.selfhtml.org/kap.gif" width="15" height="13" alt="Kapitel" /> <a href="http://forum.de.selfhtml.org/">SELFHTML Forum</a></li>
<li><img src="//src.selfhtml.org/kap.gif" width="15" height="13" alt="Kapitel" /> <a href="http://community.de.selfhtml.org/">SELFHTML Community</a></li>
</ul>
</li>
</ul>
</form>
</div>
<p class="impressum">© 2008 <img src="//src.selfhtml.org/serverdok.gif" width="15" height="10" alt="bereichsübergreifende Seite" /> <a href="http://www.selfhtml.org/de.impressum.html">Impressum</a></p>
</div>
</body>
</html>