Programmvorstellung - Vollbild-Browser-Zufallsbilder mit PHP und Javascript

Debian macht sich hervorragend als Web- und Mailserver. Schau auch in den " Tipps und Tricks"-Bereich.
Antworten
uname
Beiträge: 12075
Registriert: 03.06.2008 09:33:02

Programmvorstellung - Vollbild-Browser-Zufallsbilder mit PHP und Javascript

Beitrag von uname » 28.02.2023 08:35:29

Hallo,

heute möchte ich mal eine Software vorstellen. Sie ist vielleicht nicht schön aber die eine oder der andere kann sie gerne für die eigenen Zwecke verwenden und optimieren. Vielleicht kennt ihr in z. B. Nextcloud die Diashow von Bilderordnern. Sowas wollte ich auch auch meinem Webspace haben. Leider sind die meisten Programme viel zu aufwendig. Ich möchte eigentlich nur, dass zufällig Bilder aus einem Ordner als Vollbild angezeigt werden und alle paar Sekunden wechseln. Die Software macht nicht mehr aber auch nicht weniger.


Meine Software benötigt einen Ordner wie z. B. "/bilder" wo in meinem Fall alle Bilder (.jpg) enthalten sind, die ich für den Webspace von der Größe ein wenig optimiert habe. Auch gibt es eine random.php welche das Zufallsbild ausliefert. Die index.php ruft zudem im Abstand einiger Sekunden per Javascript immer wieder ein neues Bild auf. Natürlich können Programme und Bilder in unterschiedlichen Ordnern liegen.

random.php

Code: Alles auswählen

<?php
$count = 0;
$alledateien = scandir('.');
foreach ($alledateien as $datei)
{
  if ( preg_match("/jpg$/", $datei, $result) )
  { 
   $bilder[$count] = $datei;
   $count = $count + 1;
  }
}
header ('Location: ./'.$bilder[rand(0, count($bilder)-1)]);
?>
index.php

Code: Alles auswählen

<!DOCTYPE html>
<html lang="de">
   <head>
      <meta charset="UTF-8" />
      <title></title>
      <meta name="viewport" content="width=device-width, initial-scale=1" />
      <style type="text/css">
         html,body{
         margin:0;
         height:100%;
         overflow:hidden;
         }
         img{
         min-height:100%;
         min-width:100%;
         height:auto;
         width:auto;
         position:absolute;
         top:-100%; bottom:-100%;
         left:-100%; right:-100%;
         margin:auto;
         }
      </style>
      <script language="JavaScript">
         function refreshIt() {   
             if (!document.images) return;   
             document.images['random'].src = './random.php?' + Math.random();
            setTimeout('refreshIt()',4000);}
      </script>
   <body onLoad=" setTimeout('refreshIt()',4000)">
      <img src="./random.php" name="random">
   </body>
</html>
Kann man das ganze noch optimieren oder kürzen? Würde mich über Anregungen sehr freuen.

Benutzeravatar
debilian
Beiträge: 1200
Registriert: 21.05.2004 14:03:04
Wohnort: 192.168.43.7
Kontaktdaten:

Re: Programmvorstellung - Vollbild-Browser-Zufallsbilder mit PHP und Javascript

Beitrag von debilian » 28.02.2023 09:40:15

Habs mir mal auf meinen Testserver kopiert.
Bilder läd das Script nicht, hab ein bissl rumgespielt - bekomm es aber nicht hin,
vor allem mit den Pfadangaben (./bilder) hat was geändert aber kein Bild erscheint.

bin, am End, einfach zu doof aber danke für die beiden Dateien....

;-)
-- nichts bewegt Sie wie ein GNU --

thoerb
Beiträge: 1677
Registriert: 01.08.2012 15:34:53
Lizenz eigener Beiträge: MIT Lizenz

Re: Programmvorstellung - Vollbild-Browser-Zufallsbilder mit PHP und Javascript

Beitrag von thoerb » 28.02.2023 10:52:06

debilian hat geschrieben: ↑ zum Beitrag ↑
28.02.2023 09:40:15
Bilder läd das Script nicht, hab ein bissl rumgespielt - bekomm es aber nicht hin,
vor allem mit den Pfadangaben (./bilder) hat was geändert aber kein Bild erscheint.
Habe es selbst nicht getestet, aber das sollte eigentlich funktionieren:

Code: Alles auswählen

$alledateien = scandir('/pfad/zu/deinen/bildern');

Benutzeravatar
debilian
Beiträge: 1200
Registriert: 21.05.2004 14:03:04
Wohnort: 192.168.43.7
Kontaktdaten:

Re: Programmvorstellung - Vollbild-Browser-Zufallsbilder mit PHP und Javascript

Beitrag von debilian » 28.02.2023 11:04:54

danke, jetzt funktioniert es....

;-)
-- nichts bewegt Sie wie ein GNU --

Antworten