Sönke Tesch: ??? kleines php script

Beitrag lesen

Ich habe eine Seite mit zwei Frames.

Ohje, ein ganz schlechter Start ;)

Im ersten Frame die PHP Seite.
Nun sind hier in einem Array verschiedene Internetadressen gespeichert.
Jetzt will ich mit

foreach($array as $urls) {
}

die Adressen in dem zweiten Frame automatisch laden. Jedoch sollte zwischen den Ladevorgängen immer ein Zeitabstand von 10 Sekunden sein, sodass jede Seite 10 Sekunden lang angezeigt wird.

Falsche Abteilung. PHP läuft auf dem Server und hat in dieser Hinsicht keinerlei Kontrolle über das, was der Browser in seinen Anzeigebereichen veranstaltet. Willst Du den Browser auf diese Art und Weise kontrollieren, verwende eine browserseitige Sprache: Javascript.

Liegen Dir Deine Adressen nur in PHP vor, weil Du sie zum Beispiel aus einer Datei oder Datenbank ausliest: Denke daran, daß PHP nur Daten ausgibt bzw. an den Browser sendet. Diese Daten sind in der Regel HTML-Text, es kann aber genausogut Javascript-Code sein. Du kannst also ohne weiteres Javascript-Code per PHP ausgeben und an den entsprechenden Stellen Deine Adressen einfügen:

$adressen[]="http://a.de";
  $adressen[]="http://d.de";
  $adressen[]="http://c.de";
  echo "<script type="text/javascript">\n";
  echo "var adressen=new Array("";
  echo join("","",$adressen);
  echo "");\n";
  echo "</script>\n";

Wenn Du Dir die Ausgabe dieses PHP-Codes im Browser anschaust, siehst Du folgenden HTML-/Javascript-Code:

<script type="text/javascript">
  var adressen=new Array("http://a.de","http://b.de","http://c.de");
  </script>

Gruß,
  soenk.e