Ich verwende für mein phpBB forum einen bbcode (folgt…) welcher es mir erlaubt fotoalben in postings darzustellen. der webspace des albums ist via .htaccess geschützt, und ich hätte gerne username:passwort schon im bbcode integriert, für die zugriffskontrolle.
Ok, habs nun hinbekommen, allerdings mit vorbehalt, und nur im Firefox. IE geht nix, nur weiße Seite…
BB-Code Benutzung:
[ifra]{TEXT}[/ifra]HTML Ersetzung:
<iframe src="http://username:password@mydomain.com/{TEXT}" style="border-color:#000000; border-style:solid; border-width:1px" frameborder=1px width="900" height="900" scrolling="no"></iframe>Was nun passiert ist folgendes: Beim Aufrufen der Seite wird das Iframe geladen und ich bekomme 5 oder mehr Popups (Authentifizierung Erforderlich) in folge für Username/Passwort eingabeaufforderung. Wenn ich diese mit Abbrechen wegklicke sehe ich wohl die Hauptseite meines Fotoalbums, aber sowie ich eine andere Seite anklicke bekomme ich die Meldung Bestätigen(!)- Sie sind dabei sich mit username auf Website mydomain.de anzumelden.
Es funktioniert zwar DANN, ist aber nicht schön so.
Fällt jemandem eine besser Lösung dazu ein?
Danke & lg,
morph
Wenn du uns erklärst, was genau du damit bezwecken willst, bzw was in diesem i-Frame zu sehen ist und was das alles für ein Sinn hat, dann könnten wir vielleicht einen alternativen Weg finden.
Zum einen habe ich da mein Forum, phpBB 3.0.5, in dem unter anderem auch Beiträge zu diversen Fotoalbem stattfinden sollen. Und zum anderen habe ich da eine Fotogalerie (Jalbum.net) die auf einem anderen Teil des Webspace liegt. Was ich nun gerne hätte, bzw. zum Teil schon realisiert habe (Iframe) ist, das diese Fotoalben ins Forum (Beiträge) eingebunden werden können, und die Forenbenutzer direkt drunter ihre Beiträge verfassen können.
So, und was ist nun mein Problem?
Ich möchte nicht das Gott und die Welt einblick in meine Fotogalerien nehmen kann, daher habe ich via .htaccess den Zugang limitiert. Jedoch sollen ALLE Forenteilnehmer (innerhalb des Forums) die Galerien einsehen können, und das ohne Username/Passwort abfrage. Daher kann für jeden User das gleiche Username/Passwort verwendet (mitgeschickt) werden. Im normalfall sollte ein Forenteilnehmer nichts davon merken. Allerdings sind die Fotogalerien eben nur über das Forum aufrufbar (da das Forum ja die Usercredentials mitschickt)…
Also mir fallen da 2 Methoden ein, die man nutzen könnte. Das einfachste währe wohl, du nutzt die Authentifikation vom Forum um zu kontrollieren, wer auf das Album zu greift.
Oder, ohne mir nun im klaren zu sein was dein Album eingendlich ist, die Berechtigung des Ordners soweit runterschrauben, das man normal nicht mehr rann kommt und im Forum in einem extra, aufs Forum abgestimmten iFrame mittels PHP die Album-Daten ausliest und dort wieder gibt.
Hallo - also, bei mir gehts noch einfacher. Es geht mir nicht einmal darum die Authentifikation des Forum abzugreifen, es muss nur festgestellt werden daß er den iFrame über das Forum besucht, und schon darf er Zugriff haben…
Hmmm grübel. Eine Idee zur später Stunde hätte ich da: Statt i-Frame benutzt du ein „Immitat“ (scrolbarer DIV oder so) und bindest das Album über include ein.
In die Album-Dateien prüfst du denn ganz am Anfang, ob $_SERVER[‚PHP_SELF‘] deine ForumURL enthält. Wenn nicht, dann exit(); oder so.
Beispiel für diese Methode in den Album-Dateien, wenn Forum in /site/forum/ ist:
[PHP]if($_SERVER[‚PHP_SELF‘] != „/site/forum/viewtopic.php“) {
echo „Du bist nicht über das Forum hier“;
exit();
}
oder
$check = explode(„/“, $_SERVER[‚PHP_SELF‘]);
if($check[‚2‘] != „forum“) {
echo „Du bist nicht über das Forum hier“;
exit();
}
[/PHP]Ich bin mir sicher, es gibt noch viele andere elegantere Methoden. Aber diese dürfte es auch tun.