title image


Smiley Re: Suche PHP-Script für Geburtstagsliste, (ohne MySQL)
Hi Felix,



ich weiß gar nicht, was ich sagen soll. "Hab' dir mal schnell ein Script geschrieben, das so etwas kann"

Vielen Dank. Ich bin echt erstaunt, dass so etwas scheinbar so leicht sein kann.



Das Script habe ich ein kleinwenig verändert, sodass man die Tage vor und nach dem aktuellen Datum separat eingeben kann (zu recht viel mehr reicht leider mein PHP-Wissen noch nicht):

____________________________________




/****************



* Einstellungen *



****************/



$zeitraum_vor = 7; # Anzahl der Tage, die vor dem aktuellen Datum in der Geburtstagsliste angezeigt werden sollen

$zeitraum_nach = 14; # Anzahl der Tage, die nach dem aktuellen Datum in der Geburtstagsliste angezeigt werden sollen.



$geburtstage = file("geburtstage.txt");





foreach ($geburtstage as $key => $data)



{



$vals = explode(":", $data);





if (count($vals)>1)



{



$name = $vals[0];



$bday = string2stamp($vals[1]);







$date_start = mktime(0, 0, 0, date("m"), date("d"), date("Y", $bday)) - $zeitraum_vor * (24 * 60 * 60);



$date_end = mktime(0, 0, 0, date("m"), date("d"), date("Y", $bday)) + $zeitraum_nach * (24 * 60 * 60);





if (($bday > $date_start) && ($bday < $date_end))



{



$age = date("Y") - date("Y", mktime(0, 0, 0, date("m"), date("d"), date("Y", $bday)));



$datum = date("d. m", $bday);







echo "" . $datum . ": " . $name . " (" . $age . ")" . "";



}



}



}





function string2stamp($string)



{



$date = explode(".", $string);



return mktime(0, 0, 0, $date[2], $date[1], $date[0]);



}



?>

____________________________________



Mir ist aufgefallen, dass Reihenfolge der Geburtstage genauso ausgegeben wird, wie in der geburtstage.txt aufgelistet sind:

Anna Lisa:1984.30.09

Peter:1982.23.12

Tim:1980.30.10

Frank:1981.07.10

Katrin:1982.01.02

Fred:1970.01.10



In diesem Fall erscheint z.B. Tim vor Frank obwohl Tim erst nach Frank Geburtstag hat.

Kann man die Daten in der Textdatei evtl. nach dem Schema YYYY-MM-DD:Peter anlegen, sodass man nicht lange suchen muss, wenn man neue Geburtsdaten eingibt?



Viele Grüße



Christopher
ICQ 204098959       
_________________________________
Es braucht die Rechenkraft von drei C64, um auf dem Mond zu landen und die Power eines PentiumII, um WinXP zu starten...
irgendetwas stimmt nicht auf dieser Welt! ;-)
Apollo Mission Software


geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: