[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
REDAXO Forum • Statistik - Tagesstatistik spinnt
Seite 1 von 1

Statistik - Tagesstatistik spinnt

Verfasst: 3. Apr 2008, 09:57
von wolfgang
Hallo,
da wollte ich Euch mal von einem interessanten Phänomen berichten.

Rex 4.1 mit Statistik Addon.
Die Logs werden anscheinend richtig geschrieben.
Die Auswertung bringt die Meldung "Auswertung erstellt"
Die Tagesstatistik zeigt aber nur den ersten Tag im Monat an.
Die anderen Statistiken zeigen plausible Zahlen.
Die Auswertungsdateien habe ich schonmal gelöscht und neu angelegt: gleiches Ergebnis.

Wäre ganz dankbar, wenn hier jemand einen Lösungsansatz weiß.

Viele Grüße,
Wolfgang

Verfasst: 8. Apr 2008, 11:29
von Leinad
Hi,

genau das gleiche Problem hab ich auch.

z.B. in 2008_04.php wird bei der Tagesansicht nur folgendes geschrieben:

Code: Alles auswählen

if ( $show == "day" ) $maincontent = "<table border=0 cellpadding=5 cellspacing=1 width=100%><tr><th>Datum</th><th>Page Views</th><th>&nbsp;</th><th>Visits</th><th>&nbsp;</th><th>Seitenaufrufe pro Besuch</th></tr><tr>
        						<td class=grey align=right>Tue 01.04.2008</td>
        						<td class=grey align=right>1</td>
        						<td class=grey align=left><img src=media/white.gif width=51 height=10></td>
        						<td class=grey align=right>1</td>
        						<td class=grey align=left><img src=media/white.gif width=51 height=10></td>
        						<td class=grey align=right>1</td>
        					</tr></table>";
Als ich das Modul installiert habe, konnte ich keine Auswertung erstellen, es kam die Fehlermeldung:
Keine Logdatei
...oder so ähnlich. Also hab ich einfach eine log.txt ins Logverzeichnis gelegt... danach ging es, obwohl diese Datei gar nicht genutzt wurde.

Jetzt funktioniert alles, bis auf die Tagesauswertung.


Gruß
Daniel

Gut gemeint ...

Verfasst: 8. Apr 2008, 16:44
von Raffael1981
hi zusammen ...

Code: Alles auswählen

// generiere tagesauswertung
  function CreateDay($month, $year)
  {
    global $I18N_STATS;

    $days = Array ();

    $maxvisits = 0;
    $maxpageviews = 0;



    for ($i = 0; $i < count($this->MAIN['stamp']); $i++)
    {

      $days[date("d", $this->MAIN['stamp'][$i])]['visits']++;
      if ($maxvisits < $days[date("d", $this->MAIN['stamp'][$i])]['visits'])
        $maxvisits = $days[date("d", $this->MAIN['stamp'][$i])]['visits'];



      $days[date("d", $this->MAIN['stamp'][$i])]['pageviews'] += count($this->MAIN['pageviews'][$i]);
      if ($maxpageviews < $days[date("d", $this->MAIN['stamp'][$i])]['pageviews'])
        $maxpageviews = $days[date("d", $this->MAIN['stamp'][$i])]['pageviews'];

    }

    $daysinmonth = date("t", $this->MAIN['stamp'][0]);

    $out = "<table border=0 cellpadding=5 cellspacing=1 width=100%>";
    $out .= "<tr><th>".$I18N_STATS->msg("date")."</th><th>".$I18N_STATS->msg("page_views")."</th><th>&nbsp;</th><th>".$I18N_STATS->msg("visits")."</th><th>&nbsp;</th><th>".$I18N_STATS->msg("pageviews_per_visit")."</th></tr>";
    for ($i = 0; $i <= $daysinmonth; $i++) // für jeden tag
    {

      $day = $i +1;
      if ($day < 10)
        $day = "0".$day;

      $daytime = mktime(0, 0, 0, $month, $day, $year);
      $date = date("D", $daytime)." ".$day.".".$month.".".$year;



      if ($days[$day]['visits'] > 0)
        $pvpv = round(($days[$day]['pageviews'] / $days[$day]['visits']));
      else
        $pvpv = 0;

      if ($pvpv != 0)
      {
        if (date("w", $daytime) == 0 or date("w", $daytime) == 6)
          $iclass = "dgrey";
        else
          $iclass = "grey";

        $pprozent = round(($days[$day]['pageviews'] / $maxpageviews * 50));
        $vprozent = round(($days[$day]['visits'] / $maxvisits * 50));

        $out .= "<tr>
        						<td class=$iclass align=right>$date</td>
        						<td class=$iclass align=right>".$days[$day]['pageviews']."</td>
        						<td class=$iclass align=left><img src=pics/white.gif width=". (1 + $pprozent)." height=10></td>
        						<td class=$iclass align=right>".$days[$day]['visits']."</td>
        						<td class=$iclass align=left><img src=pics/white.gif width=". (1 + $vprozent)." height=10></td>
        						<td class=$iclass align=right>$pvpv</td>
        					</tr>";
      }
    }
    $out .= "</table>";

    $this->evalsnipps[0] = $out;

  }
diese funktion hat schon in der vergangenheit gute dienste bewiesen ... einfach unter redaxo/include/addons/stats/classes/class.stats.inc.php die funktion austauschen ab Zeile 205 :!:

da waren 3 gut gemeinte issets drin, nachdem die stamp auf int gsetzt worden isch ... unnötig und nit ganz das, was der progger wollt ... glaub ich - nach schnellem drüber-schauen ..

derweilen alles internette!!!

raffael

Verfasst: 11. Apr 2008, 08:59
von wolfgang
Hallo Redaxo Gemeinde,
Hallo Raffael,

dies hier ist ein Loblied auf die Gemeinde und Dir Raffael ein spezielles Dankeschön. Ja, der Fix funktioniert.
Und das ist einmal einer der wirklichen Unterschiede zwischen der Redaxo Gemeinde und vielen anderen sogenannten Supportforen.
Problem geschildert, ein paar Tage später wirklich eine Lösung und keine endlosen "es könnte so oder so sein"-Statements.

Redaxo = genial
Gemeinde = super
Redaxogemeinde = supergenial ;-)

Bis denn,
Grüße von Wolfgang

Verfasst: 11. Apr 2008, 10:01
von AlaskaGold
Herzlichen Dank für die Hilfe!

Hatte das gleiche Problem und mit den Änderungen von Raffael funktionier es wieder einwandfrei.

Viele Grüße

Thomas

Verfasst: 26. Sep 2008, 09:25
von Andreas.Eberhard
Hi Jan,

könntest Du das evtl. mal in das Addon übernehmen ?

Viele Grüße
Andreas