Iframe Seitenposition

Begonnen von Metal-Overdrive, 07 März 2007, 21:49:36

⏪ vorheriges - nächstes ⏩

0 Mitglieder und 1 Gast betrachten dieses Thema.

Metal-Overdrive

Ich hab da nochmal ne Frage zu nem Iframe.

Ich habe z.B. ein fremdes Gästebuch im Iframe laufen. Funktioniert auch alles wunderbar. Eine Frage habe ich aber noch. Wenn ich ganz nach unten scrolle und dann dort auf den Button für die nächste Seite klicke, baut sich diese auch auf. Nur befinde ich mich dann immer noch ganz unten im Frame. Gibt es da irgendeinen HTML Code der den Frame anweist bei einem Seitenwechsel wieder nach oben in den Frame zu springen?


Metal-Overdrive

Gut, da wohl niemand eine Antwort für mich hat (vielleicht gibt es ja auch gar keine) versuche ich es mal anders.

Das Gästebuch wir mit guestbook.php aufgerufen. Das ist quasi die index Datei von dem Gästebuch.

Gibt es eine Möglichkeit ein leeres Modul zu erstellen in dem nur eine index.php ist die auf die guestbook.php zugreift und den ganzen Seitenaufruf steuert?

xerraxde

<?php
if (!eregi("modules.php"$PHP_SELF)) {
   die (
"You can't access this file directly...");

}
require_once(
"mainfile.php");
$module_name basename(dirname(__FILE__));
include(
"header.php");
OpenTable();                           // OPEN TEMPLATE TABLE
  
  
echo "<center>";                       // OPEN CENTERING FOR CONTENT

  
{
    
$index 0;                          // HIDE RIGHT BLOCK
    
require("../guestbook.php");           // LOAD GUESTBOOK
  
}

  echo 
"</center>";                      // CLOSE CENTERING FOR CONTENT
include("footer.php");

?>


als index.php speichern, dann in einen neuen ordner kopieren und den dann in den module ordner schieben.

Da ich mich aber nicht so gut mit php auskenne, gebe ich keine garantie das des funktioniert.

Der Pfad zur guestbook.php muss angepasst werden.

Metal-Overdrive

Habe ich probiert. Bekomme nur eine leere Seite mit meinem Backround Bild.

Verstehe ich es richtig das ich mir einen Ordner erstelle (z.B. Gaestebuch) in diesem Ordner die index.php erstelle und auch die restlichen Datein vom Gästebuch (unter anderem auch die guestbook.php) in diesen Ordner kopiere?

xerraxde

#4
Nein in den Ordner kommt nur die index.php, im code selber muss der pfad zur guestbook.php angepasst werden.

Edit:mhr irgendwas fehlt doch da noch...

Metal-Overdrive

Die Tipps von xerraxde haben leider nicht geholfen. Er hat die Vermutung das in dem Code noch irgendetwas fehlt. Wenn also noch jemand eine Idee hat immer her damit.

Musicman75

klar, es fehlt noch die übergabe der Seite.
Ansonsten kann das parameter nicht ausgelesen werden.
:cool:
nen link wäre nicht schlecht
Unaufgeforderte Support PMs & Emails werden ignoriert

Immer erst die Boardsuche verwenden und gegebenenfalls einen neuen Threat eröffnen, wenn das Problem noch nicht behandelt wurde!


Metal-Overdrive

Und hier kannst du sehen wie es aussehen soll wenn es läuft:
http://www.schirrmi.com/modules.php?name=Gaestebuch
Diese Seite läuft als Iframe.

Hoffe Musicman75 oder jemand anderes kann uns da weiterhelfen.

xerraxde

Da ich wie gesagt habe keinerlei Ahnung von PHP habe, habe ich mal nen bissl gelesen und ich denke folgendes sollte funktionieren:

<?php
if (!eregi("modules.php"$PHP_SELF)) {
   die (
"You can't access this file directly...");

}
require_once(
"mainfile.php");
$module_name basename(dirname(__FILE__));
include(
"header.php");
OpenTable();                             // OPEN TEMPLATE TABLE
  
  
echo "<center>";                       // OPEN CENTERING FOR CONTENT

$guestbook = include 'guestbook.php';    // LOAD GUESTBOOK

echo $guestbook

  echo 
"</center>";                      // CLOSE CENTERING FOR CONTENT
include("footer.php");

?>


mit meiner test.php hats jedenfalls geklappt ^^

xerraxde

ok mit meiner test.php klappt es bei ihm auch, es muss also noch was in der guestbook.php geändert werden. dort ist z.b. die angabe:
// Wenn das Gästebuch in Ihrer Seite über den Befehl   include(..);   eingebunden wird, z.B. so:
// index.php?content=guestbook.php   dann müssen Sie in der Variable $vor_link den Prefix hineinschreiben
// Im Falle des Beispieles wäre dies:   index.php?content=
$vor_link = ""; // <-- Hier Wert anpassen!!!


da muss dann denke ich sowas rein: "modules.php?name=Gaestebuch=guestbook.php"

schade das ich kein php kann  :cry

Metal-Overdrive

Hallo Leute,

xerraxde hat mir wirklich schon sehr weit weitergeholfen. Ich bekomme das Gästebuch zumindestens über modules.php?name=Gaestebuch aufgerufen. Allerdings funktionieren die internen Links (Eintragen, Admin, usw.) noch nicht. Ich bekomme dann immer die Meldung: Sie haben versucht, eine ungültige Operation durchzuführen!

Da das Gästebuch über keine index.php verfügt hat xerraxde mir eine geschrieben. Anscheinend scheind da aber noch irgendein Codeschnipsel zu fehlen.

Zur Erläuterung: Ich bin gerade dabei die Seite auf meiner Testdomain neu mit PragmaMx aufzubauen. Auf der richtigen Page ist noch Php-Nuke 7.9 am laufen. Dort läuft das Gästebuch. Leider habe ich diese Page nicht programmiert, sondern ich habe sie nur übernommen von jemandem der zur Zeit für länger nach Australien gegangen ist.

Von den Einstellungen her habe ich alles so eingestellt wie es auf der Nuke Seite ist. Nun habe ich in der modules.php die im ROOT Verzeichnis der Nuke Seite liegt folgenden Eintrag gefunden:

$name = $_GET['name'];
$name = trim($name);
if (isset($name)) {
  if ($name==Gaestebuch) {
$nuke_editor_old = $nuke_editor;
$nuke_editor = 0;
include("header.php");
$file = $_GET['file'];
if (!isset($file)) {
include("modules/Gaestebuch/guestbook.php");
} else {
include($file);
}
include("footer.php");
$nuke_editor = $nuke_editor_old;
  } else {



Diesen Eintrag habe ich vor einiger Zeit schonmal mit Jubilee diskutiert. Sein Kommentag dazu:


Zitat von: jubilee
Ist der code den Du da einbauen willst ja schon fast  grob fahrlässig

...
$file = $_GET['file'];
...
include($file);

Eine variable direkt in ein include zu setzen bringt i.d.R. extra (ungewünschten) "Besuch" auf der Seite
Dann noch eine ungefilterte Globale Variable zu nehmen ist schon extra gut !



Ich habe zum Testen mal die PragmaMx modules.php durch die von meinem alten Nuke ersetzt. Und siehe da, das Gästebuch läuft.

Da ich und xerraxde an diesem Punkt absolut nicht mehr weiter wissen wende ich mich an euch. xerraxde und ich denken das der oben genannte Code irgendwie mit in die index.php des Gästebuch Moduls muss, nur halt ohne Scheunentor.

Wer interesse hat es sich mal anzuschauen kann sich komplette Gästebuch inkl. der von xerraxde geschriebenen index.php sowie die Nuke modules.php hier runterladen:
http://www.schirrmi.com/Download/Gaestebuch.zip

Würden uns freuen wenn einer eine Idee hat die uns weiterhelfen könnte.

Musicman75

ich versteh den aufwand nicht. es gibt ein guten pragma Gästebuch. Wieso muss da jetzt noch eins her?
Da ist wahrscheinlich ein konverter um die DB zu übertragen schneller geschrieben, wie das Gästebuch anzupassen.
:mad2:
Unaufgeforderte Support PMs & Emails werden ignoriert

Immer erst die Boardsuche verwenden und gegebenenfalls einen neuen Threat eröffnen, wenn das Problem noch nicht behandelt wurde!

Metal-Overdrive

Das ist ganz einfach. Wir nutzen dieses GB schon seid ein paar Jahren. Habe mir auch mal die Mühe gemacht und angefangen die Einträge von Hand ins Pragma GB zu konvertieren. Aber irgendwie gefällt es mir von der Aufmachung und vom Umfang her nicht.

Hey Musicman75, du bist doch ein Ass im Coden. Würden uns echt freuen wenn du dich der Sache mal annehmen könntest.

Andi

Moin :)

ZitatDiesen Eintrag habe ich vor einiger Zeit schonmal mit Jubilee diskutiert. Sein Kommentag dazu:
Jop, und mit diesem Kommentar hat er auch absolut recht. Schaut euch diese schwachsinnigen Zeilen mal genau an:
$file = $_GET['file'] ;
if (!isset($file)) {
include("modules/Gaestebuch/guestbook.php");
} else {
include($file) ;
}


$file ist auf jeden Fall immer definiert  ($file = $_GET['file']; )

Also wird immer folgende Zeile ausgeführt: include($file);

Sprich, du kannst jede beliebige Datei includen. Wenn url_fopen eingeschaltet ist sogar von externen Servern. Du brauchst nur die URL per GET übergeben.

Normalerweise sollten wir diesen Thread löschen. Wenn hier ein "böser Mensch" mitliest, der deine Seite rausbekommt, macht der dir den Server platt...
schön´s Grüssle, Andi

Metal-Overdrive

Zitat von: Andi am 12 März 2007, 22:50:58
Wenn hier ein "böser Mensch" mitliest, der deine Seite rausbekommt, macht der dir den Server platt...

Deswegen bin ich ja gerade dabei auf PragmaMx umzusteigen. Hier fühle ich mich echt wohl und "sicher". Als Umstellungstermin habe ich mir den 01.April gesetzt. Deswegen ist es mir ja auch so wichtig diese Lücke nicht mit zu PragmaMx mitzunehmen.

Da ich ein absoluter Neuling in Sachen PHP bin und mir diese Sprache bis jetzt auch nicht wirklich verständlich rüberkommt bitte ich ja euch mir zu helfen. Kann mir nicht eventuell mal eben jemand den Code erstellen? *Ganzfreundlichfrag*