PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Mit echo halbe webseite ausgeben



Lebowski
10-02-2008, 17:52
Hallo,
ich wollte eine Seite meiner Webseite mit einem Passwort schützen und habe diesen php code:


<?php

$Benutzername = "Benutzer";
$Passwort = "Osterhase";
if($_SERVER['PHP_AUTH_USER'] == $Benutzername && $_SERVER['PHP_AUTH_PW'] == $Passwort)
{echo "hier soll's es passieren"

else
{
header("WWW-Authenticate: Basic realm=\"Private\"");
header("HTTP/1.0 401 Unauthorized");
echo"Diese Webseite ist zugriffsgeschützt.";
}

?>


Nun will ich mit dem ersten echo den Inhalt, der in einem <div> steht, ausgeben, der enthält zum größten Teil Auflistung:


<a name="Gruppen"></a><h2>Bearbeitungen</h2>
<p>
<ul>
<li>Gruppe 1</li>
<ul>
<li><a href="Gruppe1g.zip">GeoGebra (noch nicht)</a> </li>
<li><a href="Gruppe1o.zip">OpenOffice (noch nicht)</a> </li>
<li><a href="Gruppe1m.zip">Maxima (noch nicht)</a> </li>
</ul>
<li>Gruppe 2</li>
<ul>
<li><a href="Gruppe1.zip">GeoGebra (noch nicht)</a> </li>
<li><a href="Gruppe1.zip">OpenOffice (noch nicht)</a> </li>
<li><a href="Gruppe1.zip">Maxima (noch nicht)</a> </li>
</ul>
<li>Gruppe 3</li>
<ul>
<li><a href="Gruppe1.zip">GeoGebra (noch nicht)</a> </li>
<li><a href="Gruppe1.zip">OpenOffice (noch nicht)</a> </li>
<li><a href="Gruppe1.zip">Maxima (noch nicht)</a> </li>
</ul>
<li>Gruppe 4</li>
<ul>
<li><a href="Gruppe1.zip">GeoGebra (noch nicht)</a> </li>
<li><a href="Gruppe1.zip">OpenOffice (noch nicht)</a> </li>
<li><a href="Gruppe1.zip">Maxima (noch nicht)</a> </li>
</ul>
</ul>
<a name="Gruppen_zip"></a><b>Alles als *.zip-Datei: <a href="Aufgaben_m10.zip">Gruppenergebniss.zip</a></b>
</p>

Ich dachte erst, man müsste nur die " maskieren, war's aber nicht. Dann hab ichs mit der Heredoc-Syntax versucht, hat auch nicht geklappt.
Was muss ich tuen, dass im Fall einer richtigen Benutzer- und Passwort-Eingabe der oben angezeigte Inhalt erscheint?
Danke schonmal,
Martin

BlueJay
10-02-2008, 21:50
Was hat da nicht geklappt?
Kam eine Fehlermeldung?
Kam überhaupt was an? (Quelltext checken) Und war das eine komplette Webseite?

Wenn du den Kram wie unten angegeben ausgeben willst, ist das Bequemste die heredoc-Syntax. Aber mit ordentlichem Header-Teil sollte die Seite schon ausgeliefert werden.

so long,
BlueJay

msi
10-02-2008, 22:02
ich würds so machen:


<?php
$Benutzername = "Benutzer";
$Passwort = "Osterhase";
if( $_SERVER['PHP_AUTH_USER'] !== $Benutzername || $_SERVER['PHP_AUTH_PW'] !== $Passwort ) {
header("WWW-Authenticate: Basic realm=\"Private\"");
header("HTTP/1.0 401 Unauthorized");
echo"Diese Webseite ist zugriffsgeschützt.";
exit;
}

?>
<a name="Gruppen"></a><h2>Bearbeitungen</h2>
<p>
<ul>
<li>Gruppe 1</li>
<ul>
<li><a href="Gruppe1g.zip">GeoGebra (noch nicht)</a> </li>
<li><a href="Gruppe1o.zip">OpenOffice (noch nicht)</a> </li>
<li><a href="Gruppe1m.zip">Maxima (noch nicht)</a> </li>
</ul>
<li>Gruppe 2</li>
<ul>
<li><a href="Gruppe1.zip">GeoGebra (noch nicht)</a> </li>
<li><a href="Gruppe1.zip">OpenOffice (noch nicht)</a> </li>
<li><a href="Gruppe1.zip">Maxima (noch nicht)</a> </li>
</ul>
<li>Gruppe 3</li>
<ul>
<li><a href="Gruppe1.zip">GeoGebra (noch nicht)</a> </li>
<li><a href="Gruppe1.zip">OpenOffice (noch nicht)</a> </li>
<li><a href="Gruppe1.zip">Maxima (noch nicht)</a> </li>
</ul>
<li>Gruppe 4</li>
<ul>
<li><a href="Gruppe1.zip">GeoGebra (noch nicht)</a> </li>
<li><a href="Gruppe1.zip">OpenOffice (noch nicht)</a> </li>
<li><a href="Gruppe1.zip">Maxima (noch nicht)</a> </li>
</ul>
</ul>
<a name="Gruppen_zip"></a><b>Alles als *.zip-Datei: <a href="Aufgaben_m10.zip">Gruppenergebniss.zip</a></b>
</p>

Lebowski
11-02-2008, 06:03
Wenn ich es wie in dem lezten beitrag mache, kommt man, wenn man auf "Abbrechen" drückt trotzdem auf die Webseite.
Wenn ich es mit Heredoc und echo mache, wird garnichts angezeigt, es ist auch kein Quelltext zu sehen.

BlueJay
11-02-2008, 08:08
Wenn ich es wie in dem lezten beitrag mache, kommt man, wenn man auf "Abbrechen" drückt trotzdem auf die Webseite.
Wenn ich es mit Heredoc und echo mache, wird garnichts angezeigt, es ist auch kein Quelltext zu sehen.

:)
Tja, man sollte php schon die *ganze* Kontrolle überlassen.

Langsam tippe ich auf einen Fehler bei dem Versuch, mit heredoc das ganze Zeugs auszugeben.

Nochmal:
Du strickst eine normal funktionierenden Website und copypastest die dann in den Heredoc-Stream:

Also:


echo <<<RAUSDAMIT
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head><title>blabla</title>
...
</body>
</html>

RAUSDAMIT;

msi
11-02-2008, 12:58
Wenn ich es wie in dem lezten beitrag mache, kommt man, wenn man auf "Abbrechen" drückt trotzdem auf die Webseite.
Wenn ich es mit Heredoc und echo mache, wird garnichts angezeigt, es ist auch kein Quelltext zu sehen.

äh nein? das funktioniert wunderbar.
darfst halt das exit net weglassen...

Lebowski
11-02-2008, 13:08
Danke, wunderbar, so klappts!