Ausgabe aller Monate seit 2005 mit Hilfe von timestamps

fablei

Grünschnabel
Hallo,
ich habe folgendes Problem.

Ich möchte gerne eine Tabelle erzeugen, die in einer Schleife pro Durchlauf jeden Monat seit Januar 2005 bis heute (August 2006) automatisch mit dem dazu gehörigen timestamp auswirft.

Ich habe leider keine Idee, wie ich an dieses Problem heran gehen soll bzw. wie ich mit php die Monate seit 2005 ausgebe.

Thanks in advance,
Fabian
 
Ich hab im Archiv-Script hier auf der Arbeit sowas in der Richtung:
PHP:
$messages=mysql_query("select * from messages where type='instruction' order by sendtime limit 1",$mydb);
$message=mysql_fetch_assoc($messages);
$news=mysql_query("select * from news order by newsdate limit 1",$mydb);
$new=mysql_fetch_assoc($news);
if (($new['newsdate']!="") && ($new['newsdate']<$message['sendtime']))
	{
		$startdate=$new['newsdate'];
	}
elseif ($message['sendtime']!="")
	{
		$startdate=$message['sendtime'];
	}
else
	{
		$startdate=$new['newsdate'];
	}
$enddate=time();
if ($startdate)
	{
		$workdate=$enddate;
		$changes[$changesection].='<a class="menu-item" href="index.php?action=archives&amp;showdate='.date("MY",$workdate).'">'.date("M Y",$workdate).'</a>';
		while (date("M Y",$workdate)!=date("M Y",$startdate))
			{
				$tempdate=$workdate;
				while (date("M Y",$tempdate)==date("M Y",$workdate))
					{
						$tempdate-=86400;
					}
				$workdate=$tempdate;
				$changes[$changesection].='<a class="menu-item" href="index.php?action=archives&amp;showdate='.date("MY",$workdate).'">'.date("M Y",$workdate).'</a>';
			}
	}

Das ganze erzeugt mir Links die dann z.B. so aussehen:
HTML:
<a class="menu-item" href="index.php?action=archives&amp;showdate=Aug2006">Aug 2006</a>

Gearbeitet wird dabei mit Timestamps.
 
Vielen Dank für deine schnelle Antwort.

Leider eruzeugt dein Skript nicht die Funktionalität die ich benötige. Allerdings hat es einen guten Denkanstoss gegeben.

Woran ich immer noch knabbere ist die Möglichkeit alle Monate seit 2005 auszugeben, dass man sozusagen feststellen kann welchen timestamp der Monatsnanfang und das Ende hat.

Grüße,
Fabian
 
tag du
dir empehle ich, dich erst mal mit der timestamp-Funktion auseinanderzusetzen

PHP:
$timestampeinesbestimmtendatums=mktime(0, 0, 0, $feldbdaymonat, $feldbdaytag, $feldbdayjahr);

$datumanzeige=date("d.h.Y");

$datumanzeigeeinesbestimmtenjahres=date("d.h.Y",$beliebigertimestamp);

$jetzigertimestamp=time();

mit mktime() legst du den bestimmten Monat fest (Vergangenheit,Zukunft,egal)
und mit date() erhaelst du die Anzahl der Tage, die dieser Monat hat.
Wenn du die Anzahl der Tage eines bestimmten Monats hast, weisst du auch den letzten Tag dieses einen Monats. Dadurch kannst du dann eine ausgabeschleife machen, bis der z.b. 31.etc ausgegeben wird, dann wird das Spiel wieder vom Ersten des folgenden Monats wiederholt und du kriegst n Jahreskalender.

PHP:
$anzahldertagediedermonathat=date("t",$timestampinnerhalbdesmonats)
entspricht: letzter Tag des jeweiligen monats
"t Anzahl der Tage des angegebenen Monats 28 bis 31"
http://de2.php.net/manual/de/function.date.php
 
Zuletzt bearbeitet:
Zurück