low-group
Erfahrenes Mitglied
hi ich bins wieder
Ich habe in meiner SQL-Tabelle Artikel stehen mit Starttime und Endtime. Wenn ein User den Artiel löscht, wird nur ein Timestamp gesetzt, was vorher auf 0 steht.
Nun habe ich eine Seite, wo die eigenen Artikel gezeigt werden mit der Anzahl der Tage, wie lange dieser online war und diese Seite ist mit Blätterfunktion zu den vorigen Monaten. Jetzt will ich, daß wenn ich im Monat März bin alle Online-Tage nur für den März gezählt werden. Wenn z.b. ein Artikel am 3. März beendet wurde und schon im Februar begann, sollte er dann nur 3 Tage zählen und nicht die Tage im Februar dazu.
Nun hier mal mein Code bisher:
$mount = der laufende Monat
nun haut das bei mir ewig nicht hin mit der richtigen Berechnung der Tage, wenn ich an deer einen Stelle was ändere, ändert sich wieder woanders was.
Ich habe in meiner SQL-Tabelle Artikel stehen mit Starttime und Endtime. Wenn ein User den Artiel löscht, wird nur ein Timestamp gesetzt, was vorher auf 0 steht.
Nun habe ich eine Seite, wo die eigenen Artikel gezeigt werden mit der Anzahl der Tage, wie lange dieser online war und diese Seite ist mit Blätterfunktion zu den vorigen Monaten. Jetzt will ich, daß wenn ich im Monat März bin alle Online-Tage nur für den März gezählt werden. Wenn z.b. ein Artikel am 3. März beendet wurde und schon im Februar begann, sollte er dann nur 3 Tage zählen und nicht die Tage im Februar dazu.
Nun hier mal mein Code bisher:
$mount = der laufende Monat
PHP:
$this = mktime(0,0,0,$month,0,$year);
$next = mktime(0,0,0,$month+1,0,$year);
$heute = time();
$result = $db->query("SELECT subject, posttime, endtime, adr, userid FROM bb".$n."_portal_artikel WHERE userid=".$wbbuserdata['userid']." ");
while($row = $db->fetch_array($result)){
$postmonat=formatdate("F",$row['posttime']);
$postm=formatdate("n",$row['posttime']);
$day = $row['posttime'];
$end2 = $row['endtime'];
$subject = htmlconverter($row['subject']);
$adr = htmlconverter($row['adr']);
if ($day > $next || $end2 < $this)
{
$tg =0;
}
elseif ($day<$this && $end2==0)
{
$tg = ($heute - $this)/86400;
}
elseif ($day<$this && $end2>$this && $end2<$next)
{
$tg = ($end2 - $this)/86400;
}
elseif ($day>=$this && $end2==0) {
$tg = ($next - $day)/86400;
}
elseif ($day>=$this && $end2<$next) {
$tg = ($end2 - $day)/86400;
}
eval ("\$portal_monbit .= \"".$tpl->get("portal_monbit")."\";");
}
nun haut das bei mir ewig nicht hin mit der richtigen Berechnung der Tage, wenn ich an deer einen Stelle was ändere, ändert sich wieder woanders was.