Zum Inhalt springen

Bilder Rotation im Template

Erstellt am 21. Mai 2007 · 9 Antworten · letzte Antwort am 23. Mai 2007

Tags: Bilder, PHP, Frage

harry7922 ·

Hallo zusammen,

ich habe in minem Template einen Platz für Bilder, den ich gerne nutzen möchte um nach jedem neuen laden einer Seite ein anderes Bild (aus dem Bilder-Pool) anzeigen zu lassen (Bilder rotieren).

Ich habe es versucht direkt in die Template-Datei den PHP Code zu schreiben, doch leider ohne Erfolg. Denke dass die Datei nicht mehr durch den Parser läuft ??

Wie kann ich es dann hinbekommen dass sich die Bilder ständig abwechseln??

Hier mal das Skript was ich verwenden wollte:

<?PHP
  mt_srand((double)microtime()*1000000); 
  $zufall = mt_rand(1, 25); 

  echo "<img src=\"pfad_zu_den_bildern/$zufall.jpg\" border=\"0\">\n";
?>

Hier müssen die Bilddateien in dem gleichen Verzeichnis liegen und durchnumeriert sein.

Hat jemand vielleicht schon mal so was "simples" realisiert und kann mir bitte unter die Arme greifen.

Vielen Dank für wirklich jeden Vorschlag!!

Grüße
Hardy

Chumper ·

So. HIer mal mein Quellcode:

<?php
$content='';
$verz = opendir ('fileadmin/Dein Pfad zu Bilder'); 
$bildarray = array();
while ($file = readdir ($verz)) {
if ((!is_dir($file)) && ($file != ".") && ($file != "..") ){
array_push($bildarray, $file);
}
}
closedir($verz);
shuffle($bildarray);
$content = $content."<img  src=\"fileadmin/Dein Pfad zu Bilder/".$bildarray[1]."\" >";

?>

Damit liest er alle Bilder aus dem genannten Verzeichnis aus und wählt zufällig eins aus.
Müssen allerdings die Richtige Größe haben.

hiermit bindest du es ein:

      10.marks.DEIN MARKER = PHP_SCRIPT
      10.marks.DEIN MARKER.file = fileadmin/Dein Pfad/image.php

das Skript heisst image.php und liegt in Dein Pfad.
Die Bilder liegen in Dein Pfad zu Bilder. Pass es dir an und viel Spaß;-)

harry7922 ·

Vielen Dank für die schnellen Antworten, ihr seid Spitze!!

Ich werde es mir anpassen, vielen Dank!!!

Liebe Grüße
Hardy

harry7922 ·

Hallo Chumper,

ich habe noch eine kleine Frage.
Ich habe das Skript angepasst, vielen Dank. Soweit funktioniert es auch, doch es scheint mir, dass es im Cache gespeichert wird, welches Bild auf welcher Seite dargestellt wurde.

Wenn ich z.B. in der index.php immer wieder auf aktualisieren drücke, bleibt das Bild immer das selbe und wechselt nicht durch.
Kann man da noch was "optimieren"????

Vielen Dank nochmal!!!

Grüße
Hardy

dirkbert ·

habe dein script genommen ... funktioniert soweit, nur leider bekomme ich jetzt diese warnung oberhalb meiner seite:

Warning: Cannot modify header information - headers already sent by (output started at /var/www/typo3.cs-gate.de/fileadmin/templates/CDH-Nordost/images/random/image.php:15) in /var/www/typo3.cs-gate.de/typo3_src-4.1.1/typo3/sysext/cms/tslib/class.tslib_fe.php on line 2898

harry7922 ·

Poste doch mal mehr Informationen (das PHP File und den betreffenden TS Code) vielleicht kann ich dir helfen.

Grüße
Hardy

Chumper ·

Das Problem liegt wohl daran, dass du vor dem <?php ein oder mehrere Leerzeichen hast, oder nach dem ?>.
Mach die weg, dann sollte das gehen;-)