Ich versuche, das Hintergrundbild einer Webseite aus einem Ordner per PHP nach dem Zufallsprinzip festlegen.php Hintergrundbild zufällig aus Ordner
Ich habe den folgenden Code:
<!DOCTYPE HTML>
<html>
<head>
<link rel="stylesheet" type="text/css" href="style.css">
<title>404</title>
</head>
<body id="Background404">
<p>404-Page not found. <a href="http://url.com>Home.</a></p>
<?php
$dir = '/var/www/html/Images';
$fileNames = array();
if(is_dir($dir)){
$handle = opendir($dir);
while(false !== ($file = readdir($handle))){
if(is_file($dir.'/'.$file) && is_readable($dir.'/'.$file)){
$fileNames[] = $file;
}
}
closedir($handle);
$fileNames = array_reverse($fileNames);
print_r($fileNames);
}
$totalLength = sizeof($fileNames);
$randInt = rand(0, $totalLength);
$randFile = $fileNames[$randInt];
echo '<style> #Background404{background: url($randFile);}</style>';
?>
</body>
</html>
Hinweis: Der Druck der Dateien nur um sicherzustellen, dass ich diesen Punkt in Code zu erreichen und sehen, was die Dateien aufgerufen werden. Ich habe eine ähnliche Frage hier gefunden: Random Background Image PHP, aber als ich diese Antwort verwendet habe, habe ich nur einen reinen weißen Hintergrund.
Hier ist eine Kopie der gedruckten Array:
Array (
[0] => GraniteBridge.png
[1] => mobileBackground.png
[2] => OtherKingdom.png
[3] => NetherBase.png
[4] => BackgroundTablet.png
[5] => Snowy.png
[6] => Village.png
[7] => background2.png
[8] => CactusFarm.png
[9] => FrontView.png
[10] => CreditsPortal.png
[11] => FrontNight.png
[12] => background4.png
[13] => XPFarmRailway.png
[14] => GoldIronFarms.png
[15] => Pyramid.png
[16] => NetherFortress.png
[17] => TheEnd.png
[18] => Library.png
[19] => Background.png
[20] => twitter.png
[21] => mobileBackground1.png
[22] => mobileBackground2.png
[23] => BirdsEyeView.png
[24] => EndPortal.png
[25] => AboveVillage.png
[26] => TowerToTheHeavens.png
[27] => TowerArmorStands.png
[28] => FullSizeBackground.png
[29] => Mansion.png
[30] => Night.png
[31] => Dojo.png
)
Ich habe gerade den Beitrag bearbeitet, weil ich einen Fehler gemacht und Rand nicht zugewiesen habe om Wert für die Variable zur späteren Verwendung. – Marcin
Ich habe das versucht und jetzt sehe ich ein Bildelement, aber es findet das Bild nicht und wenn ich die Bildadresse kopiere, bekomme ich "http://96.19.31.19/var/www/html/Images/$fileNames [% 3C? = $ Random?% 3E] "also ist es offensichtlich, dass man den PHP nicht in reinen Text umwandelt, um ihn in html zu verwenden – kalenpw