IFrame, Content
Reinhard
- php
Hallo,
folgendes Szenario:
Ich habe eine Seite (s01), welche einen Benutzereintrag anzeigt.
Der Benutzereintrag wird in der Session hinterlegt, so dass
die Seite (s02), welche in einem Iframe angezeigt wird, den
anzuzeigenden Inhalt aus der Session ausliest.
Bei einem einzigen Eintrag klappt das wunderbar.
Erweitere ich die Seite s01 nun so, dass mehrer Beitraege zugleich
angezeigt werden sollen - sprich, mehrere Iframes -, so kommt es zu
dem Problem, dass die Seite s02 jeweils ein und denselben Beitrag
anzeigt - und zwar stets den letzten.
Meine Vermutung ist der, dass der Content des Iframes erst zu einem
spaeteren gepunkt geparsed respektive zusammengesetzt wird, als die
Seite s01!
Loesungsansatz:
Auf Grund meiner Vermutung bin ich so vorgegangen, dass ich den
Inhalt der Seite s01 zuerst mittels ob_start() etc.. in einen
Buffer packe - in der Hoffnung, dass somit erst vollstaendig der
Inhalt des Iframes zusammengebaut wird, bevor sich PHP dem naechsten
widmet.
Doch war leider auch dies vergeblich.
Habt ihr irgendwelche Vorschlaege diesbezueglich?
Besten Dank
Reinhard
PS: Sollte ich mich missverstanedlich ausgedrueckt habe, so fragt
mich einfach, und ich werde versuchen das Problem noch naeher
zu erlaeutern.
PPS: Tipps, auf einen Iframe zu verzichten, helfen mir nicht weiter,
da ich an eine vorgegebene Architektur gezwungen bin.
Hello,
PPS: Tipps, auf einen Iframe zu verzichten, helfen mir nicht weiter,
da ich an eine vorgegebene Architektur gezwungen bin.
dann bleibt dir lediglich eine Umstellung von Session auf GET-Parameter für die URL, die der IFrame anfordert. Da kann nämlich keiner auf den anderen warten:
Browser: "Gib mir Hauptseite"
Server: *moment, PHP fragen...* ah, ok, "hier bitte"
Browser: "oi, da sind ja iframes drin"
"du, gib mir mal x"
Server: *moment, PHP fragen...* ah, ok, "hier bitte"
Browser: "danke"
<zeitgleich>
Browser: "du, gib mir mal y"
...
Die Reihenfolge WANN welches iFrame geladen wird, ist vollkommen außerhalb deiner Kontrolle. Die Session rettet dich also nicht. Du musst die Information was dort angezeigt werden soll also an die URL anhängen oder einen anderen Weg der Übertragung finden.
MfG
Rouven
Hallo Roueven,
das mit der URL, ein wenig abgewandelt, ist eine super Idee!
Ich gebe ihm einfach den Key der Variable der Session mit, aus der
er den Inhalt anzeigen soll..
Werde das gleich mal ausprobieren ;)
Danke!
Gruesse
Reinhard
Hello,
Ich gebe ihm einfach den Key der Variable der Session mit, aus der
er den Inhalt anzeigen soll..
das wäre die Variante wenn der Client nicht wissen soll, was er da zu sehen bekommt...
MfG
Rouven
Hallo Rouven,
habe das jetzt so implementiert und bin gluecklich ;-)
Besten Dank nochmal fuer den Tip.
Reinhard