Sie befinden sich hier im Forenarchiv von phpforum.de wenn Sie direkt ins Forum möchten, klicken Sie bitte hier. Zur Startseite kommen Sie hier.

Abfrage, ob Popup noch auf

Hallo,

bitte nicht gleich schreiben, das das hier schon steht... es steht hier nicht!

Also:

Ich rufe aus der Datei popup.php mittels windows.open ein Zufallspopup aus der Datenbank auf.
Da ich popups einbinden will, die per script aufgerufen werden (wie z.B. bei Multisponsor.de), sowie Popups aus einer URL bestehend, mache ich vorher eine Abfrage (definiert in der Datenbank ob URL oder SCRIPT) und gebe dann der Variable $popup den Code, damit sowohl das Script-Popup als auch das URL-Popup richtig angezeigt werden.
Für das URL-Popup sieht das so aus:

Code:                   In Zwischenablage kopieren (nur IE)
1">

Weiter unten in dem php-Script steht dann folgendes, um das Popup aufzurufen und zu prüfen, wie lange es geöffnet ist:

Code:                   In Zwischenablage kopieren (nur IE)
2">

In der popup1.php ist nur der restliche Code drin für das richtige Anzeigen des Popup.

In der popupcheck.php steht dann folgendes:
Code:                   In Zwischenablage kopieren (nur IE)
3">

Leider klappt es aber nicht mit der Funktion popupprüfen, ob das Popup noch geöffnet ist (soll kontrolliert werden, bis eine bestimmte Zeit verstrichen ist, da dann eine Vergütung stattfindet).

Wie kann ich das lösen, da ja das Popup in einer anderen Datei aufgerufen wird, als aus der, wo es geprüft wird?

Ich bin für Antworten unheimlich dankbar!

Liebe Grüße,

Gerda
Hier gehts zum Orginal Eintrag "Abfrage, ob Popup noch auf" im Forum

Antworten

hm ich kenn mich mit JavaScript zu wenig aus, leider. Wäre es aber evtl möglich nur Start und Endzeit abzufragen? Also beim Öffnen des popup die Zeit auf dem Server merken und wenn das popup geschlossen wird, per Javascript Event Handler noch eine PHP Aktion ausführen, also die Endzeit auf dem Server merken.
Ist nur so ne Idee.


2.

Hallo,

also ich bin auch nicht so bewandert darin... Ich hab leider auch nicht so ganz verstanden, was Du meinst, aber nur nicht ganz! *smile

Es würde mir ja auch reichen, wenn einfach am Ende der vordefinierten Zeit (festgelegt in der Variablen $zeit) geprüft wird, ob das Popup noch auf ist, so wie Du schon meintest.

Allerdings fehlt mir selbst dabei die Kenntnis von PHP, bzw. Javascript.

Vielleicht noch jemand Vorschläge? Poste das hier wohl besser auch nochmal in das Javaschript-Forum.... Sorry!

Danke für die Hilfe....

Gerda


3.

Frage lieber einen Moderator, ob ers verschieben kann. Doppelpostings sind nicht so beliebt ;)

Also so wie du das möchtest, könnte man das popup per META TAG dazu bringen nach x Sekunden/Minuten einen erneuten Request auszuführen.

Code:                   In Zwischenablage kopieren (nur IE)
4">

45 bedeutet, dass nach 45 sek auf die in URL eingetragene Domain weitergeleitet wird. Da könntest du eine Variable dranhängen, damit dein PHP Skript weiß, dass es die Zeit abgelaufen ist.


4.

Hallo,

das wäre eine Möglichkeit, aber auf das Popup, welches sich öffnet (also die Variable $url), hab ich ja keinen Einfluß. Oder sehe ich das jetzt falsch? *kopfkratz

Sorry, hab mich noch nicht mit popups beschäftigt bisher..... *schäm


5.

Es gibt dafür keine vernünftige Lösung, zumal Javascript vom Benutzer beliebig manipuliert werden kann.


6.

Hallo,

hab das jetzt auch alles etwas geändert. Jemand hatte mich darauf aufmerksam gemacht, daß der Countdown für das Zählen des Popups in einem Frame des Popups sein muß (logisch! *schlag vor die Stirn).

Leider zeigt er im Moment aber noch nicht die Seite an und auch der Countdown funzt nicht. Hat noch jemand eine Idee?
Hier der Code:


popup.php, wo das neue Fenster geöffnet wird mit dem Popup (steht natürlich noch mehr drin!):
[code[<SCRIPT LANGUAGE="JavaScript">
<!--
var popup='<?php echo htmlspecialchars($popup) ?>';
var id='<?php echo $id ?>';
var zeit='<?php echo $zeit ?>';
window.open("popup1.php?popup="+popup+"&id="+id+"&zeit="+zeit,"");
//-->
</SCRIPT>
/code]

Dann die gesamte popup1.php:

Code:                   In Zwischenablage kopieren (nur IE)
5">

Und dann popup2.php, das eigentliche Popup:

Code:                   In Zwischenablage kopieren (nur IE)
6">

Die Datei popupcheck.php, wo der Countdown gemacht wird:

Code:                   In Zwischenablage kopieren (nur IE)
7">

Sorry, wenn ich so viel Code poste... versuche mich auf das wesentlich zu konzentrieren.

Also das öffnen des Popup-Framestes (so nenne ich das mal) funktioniert auch. Bekomme auch in der Adresszeile angezeigt, das der Verweis auf die URL des Popups richtig ist, also die Adresse, die man als Ziel angibt.

Wie gesagt... nur die Seite wird nicht angezeigt und in dem Quellcode den ich mir von der Seite anzeigen lassen kann im Browser steht leider nicht, ob die Adresse richtig ist. Weiß nur, das sie bei der Übergabe von popup.php zu popup1.php da ist.

Übrigens bekomme ich als Fehlermeldung für den Countdown noch, das die Variable aktiv undefiniert wäre (unten im IE).

Für Hilfe wäre ich wirklich sehr dankbar!

Gerda


7.

So jetzt wirds verschoben ;)


Hier gehts zum Orginal Eintrag "Abfrage, ob Popup noch auf" im Forum
 
phpforum.de | Impressum | Handy Bundles