Pic-of-the-Day

dermacz

Erfahrenes Mitglied
Hallo,
Ich habe ein Script für eine Pic-of-the-Day Sache gemacht nur fehlt noch das eben aus dem ausgelesen Ordner jeweils nur ein Pic angezeigt wird, welches (ich denke mal es ist mit einer rand() am leichtesten) jeden tag wechselt.

Naja hier ist mein Script könnt ihr mir villeicht dabei helfen das einzubauen
PHP:
<?php
$dirlist = "./"; 
$border = 0;


if ($alreadydone != 1) {
if (is_dir($dirlist)==true ) {
chdir( $dirlist );
$handle=opendir( ".");
}
$x=0;
$images=array();
while (($file = readdir($handle))!==false) {
$pieces = explode (".", $file);
if ($pieces[0] && $pieces[1]) {
if (($pieces[1]=="gif") || ($pieces[1]=="jpg") || ($pieces[1]=="GIF") || ($pieces[1]=="JPG") || ($pieces[1]=="bmp") || ($pieces[1]=="BMP") || ($pieces[1]=="jpeg") || ($pieces[1]=="png") || ($pieces[1]=="PNG")) {
$images[$x]=$file;
$x++;
}
}
}
closedir($handle); 
}
else
{
$images = unserialize(base64_decode($myArrayS));
}
for ($i=0; $i<=sizeof($images); $i++)
{
				
				echo "<img src=$images[$i] border=$border>";
}
?>

Ich denke mal das ich eben statt der for-Schleife ne if machen muss komme aber nicht drauf wie....Kann mir da jemand helfen?
 
wie du schon vermutest kannst du ein zufälliges bild einfach ausgeben mit
PHP:
$path = $images[rand(0,count($images)-1)];
das ganze wäre dann aber eher ein random pic, kein pic of the day.
um das hinzubekommen müsstest du natürlich die information über das pic of the day speichern.
z.b. in einer datenbank oder einfach in eine datei schreiben.
wobei dann natürlich bei jedem seitenaufruf überprüft werden müsste, ob es zum heutigen tag schon ein bild gibt, wenn nicht, dann ein neues bestimmen und die information wieder an die entsprechende stelle speichern.
//greets
//bad taste
 
Ja das ist ja schonmal was gutes danke! Nur eben is es wie gesagt ein random-pic...Kann man nicht sagen das eine Funktion, die nur jeden tag einmal ausgeführt wird, ein anderes Bild lädt? ich wüsste nicht wie und das mit der Textdatei verstehe ich nicht ganz wie du das mit dem reischreiben meinst...Wäre cool wenn du mir das nochma erklären könntest ;-)

Hmm irgendwie bin ich zu blöd das einzubauen...
 
Zuletzt bearbeitet:
Du liest bei jedem Seitenaufruf eine Datei ein, in der ein Datum und die nötigen Informationen zu dem Bild stehen. Entspricht das Datum dem heutigem Datum, gibst du das Bild aus, das in der Datei steht. Wenn nicht, wählst du zufällig ein Bild aus, und schreibst das aktuelle Datum und die Bildinformationen in die Datei.
Alternativ lassen sich die Informationen, wie schon gesagt, in einer Datenbank speichern, was natürlich etwas einfacher zu handhaben ist, und auch besser erweitert werden kann.
 
Jo, da gebe ich Oliver Gringel recht. Zum Prüfen des Datums würde ich Timestamps nehmen. Prüfen mit
PHP:
<? if (date("d.m.Y") == date("d.m.Y", $timestampausdatei)) ?>
wäre da ganz passend. Hier noch ein paar wichtige PHP-Funktionen um mit Dateien zu arbeiten: [phpf]file[/phpf], [phpf]fopen[/phpf], [phpf]fputs[/phpf] und [phpf]fclose[/phpf]

mfg
 
Du könntest das ganze auch mittels eines Cronjobs lösen, der immer um 0Uhr aufgrufen wird bzw. eine Seite aufruft, die dir per Random ein Bild raussucht und in eine Datenbank schreibt.
Würde zumindest den Server entlasten bzw. das Script beschleunigen, denn so müsste nicht jedes mal überprüft werden, obs noch der "aktuelle" tag ist.
 
@sabre: Ja sowas hatte ich mir gedacht nur hab ich davon keine Ahnung wäre es möglich das du mir sowas in das Script reinmachst...wenn ja was brauchst du dann noch für Infos?
 
Zurück