Seite 1 von 2

req: periodischer check (alle x-minuten) für PM's

Verfasst: 05.12.2002 20:39
von caipirinha
kann man die PMs periodisch (zB alle x-minuten) abfragen?

habe es in der verall_header.tpl im folgenden code

Code: Alles auswählen

  <!-- BEGIN switch_enable_pm_popup -->
  <script language="Javascript" type="text/javascript">
  <!--
 	if ( {PRIVATE_MESSAGE_NEW_FLAG} )
	{
		window.open('{U_PRIVATEMSGS_POPUP}', '_phpbbprivmsg', 'HEIGHT=225,resizable=yes,WIDTH=400');;
	}
  //-->
  </script>
  <!-- END switch_enable_pm_popup -->
</head>
mit setIntervall probiert, jedoch hat es nie funktioniert.
ich möchte es wegen des traffics nicht unbedingt über ein META-TAG REFRESH machen müssen.

daten
PHPBB 2.03
style: BMan1Blue mit leichten modifikationen
mods: noch keine
portal: keines
board sonst problemlos

Verfasst: 05.12.2002 20:49
von Jensemann
Hi

Nein geht nicht. die pms werden per php gecheckt, das läuft bekanntlich serverseitig, daher wäre meta refresh die einzige lösung.

Mfg
Jens

Verfasst: 05.12.2002 20:57
von caipirinha
ja, aber die abfrage erfolgt doch per JS. also verstehe ich nicht, warum das nicht gehen sollte?
oder kann man in .TPLs setInterval einsetzen?

Verfasst: 05.12.2002 21:04
von Jensemann
Hi

Ich erklärs mal:

php prüft beim erzeugen der seite ob neue PMs da sind, wenn ja wird wird eine js variable gesetzt, wenn diese existiert wird ein popup geöffnet. js prüft nur ob die variable da ist und macht das popup, prüfen macht php, geht auch nicht anders. D.H. deine seite muß neu erzeugt werden damit sowas gehen kann, daher ist ein neuladen erforderlich was eben z.B. mit nem meta refresh geht, da dir aber neuladen zuviel traffic verursacht geht es eben gar nicht.

Alles klar?

Mfg
Jens

Verfasst: 05.12.2002 21:08
von caipirinha
alles klar jens, danke.
doch esgeht weiter.
wenn mit META REFRESH, bräuchte man theoretisch nur ein iframe machen und die datei kediglich mit dem JS code versehen, oder?

Verfasst: 05.12.2002 21:10
von caipirinha
ach, und noch was.
bei einem chat geht es ja auch (in PHP).
da müsste s doch eine möglichkeit geben ....

Verfasst: 05.12.2002 21:39
von Jensemann
Hi

Zu 1:
Ja, reicht aus.

Zu 2:
Nein, die meisten php chats verwenden auch meta refresh. Der unterschied ist aber das beim chat der browser nicht wissen muß ob was neues da ist, hierbei schon. Lässt sich nicht vergleichen.

Mfg
Jens

Verfasst: 05.12.2002 21:53
von caipirinha
widiker chat http://www.widiker.de

Code: Alles auswählen

echo "window.parent.document.frames('ausgabe').scrollBy(0,300000);\n";
echo "window.setTimeout(\"window.location='lesen.php?letzte=$letzte&zeilen_gesamt=$zeilen_gesamt'\",5000);\n";
?>
das sieht aber nicht gerade nach meta refresh aus.

Verfasst: 05.12.2002 21:58
von Jensemann
kommt aufs selbe raus. Vergiss es einfach, es geht nicht ohne neuladen der seite bzw. des frames, es geht einfach _nicht_. php ist serverseitig und springt nicht von selber an, noch weniger kann es eine bereits ausgelieferte seite ändern.

Lern erstmal was über client-server technick, damit du es selber begreifst.

Mfg
Jens

Verfasst: 05.12.2002 22:02
von caipirinha
wirst wohl recht haben.
OK, danke dir jens

greezzzzz
Robert