Uutiset:

Bored?  Looking to kill some time?  Want to chat with other SMF users?  Join us in IRC chat or Discord

Main Menu
Advertisement:

[gelöst] Archiv in der Statistik

Aloittaja Sampaguita, heinäkuu 08, 2004, 04:44:44 AP

« edellinen - seuraava »

Sampaguita

In meinem SMF habe ich der Übersicht halber auch ein Archiv angelegt, in dem alte Postings in Ruhe vor sich hin vegetieren dürfen (falls doch mal etwas gesucht wird). Dort werden auch die Forum-Spiele abgelegt, welche ich normalerweise bei ca. 150 Beiträgen kappe. Ich möchte allerdings nicht, dass die archivierten Beiträge in den Statistiken geführt werden, sprich unter dem Punkt "[Weitere Statistiken]" auftauchen, will die Sachen aber natürlich auch nicht löschen. Wie kann ich das am Besten bewerkstelligen?

Ich dachte schon darüber nach für die Statistiken evtl. die SQL-Abfrage so zu ändern, dass das Board "Archiv" bei den Ergebnissen einfach ausgeklammert wird, aber vielleicht geht es ja doch etwas einfacher?

Sampaguita

Danke, hat sich erledigt. Ich habe es dann doch einfach in den SQL-Abfragen der /Sources/Stats.php gemacht:

Lainaa
   // Board top 10.
   $boards_result = db_query("
      SELECT ID_BOARD, name, numPosts
      FROM {$db_prefix}boards AS b
      WHERE $user_info[query_see_board]
      AND ID_BOARD != 16
      ORDER BY numPosts DESC
      LIMIT 10", __FILE__, __LINE__);

..........

   // Topic replies top 10.
   // !!!SLOW This query is slow, but can it be fixed at all?
   $topic_reply_result = db_query("
      SELECT m.subject, t.numReplies, t.ID_BOARD, t.ID_TOPIC, b.name
      FROM {$db_prefix}topics AS t, {$db_prefix}messages AS m, {$db_prefix}boards AS b
      WHERE m.ID_MSG = t.ID_FIRST_MSG
         AND $user_info[query_see_board]
         AND t.ID_BOARD = b.ID_BOARD
         AND t.ID_BOARD != 16
      ORDER BY t.numReplies DESC
      LIMIT 10", __FILE__, __LINE__);

..........

   // Topic views top 10.
   $topic_view_result = db_query("
      SELECT m.subject, t.numViews, t.ID_BOARD, t.ID_TOPIC, b.name
      FROM {$db_prefix}topics AS t, {$db_prefix}messages AS m, {$db_prefix}boards AS b
      WHERE m.ID_MSG = t.ID_FIRST_MSG
         AND $user_info[query_see_board]
         AND t.ID_BOARD = b.ID_BOARD
         AND t.ID_BOARD != 16
      ORDER BY t.numViews DESC
      LIMIT 10", __FILE__, __LINE__);


Die entsprechenden Einträge habe ich mal rot markiert, falls es jemand ebenfalls braucht. Es muss lediglich die korrekte ID des Archiv-Boards gefunden werden und statt der 16 (in meinem Fall die Board-ID des Archivs) eingetragen werden. Viel Spaß! :)

andrea

Ist glaube ich keine schlechte Lösung so. P.S. habe noch das [gelöst] Prefix hinzugefügt für Dich.  ;)

Andrea Hubacher
Ex Lead Support Specialist
www.simplemachines.org

Personal Signature:
Most recent work:
10 Aqua Themes for SMF



Pitti

trotzdem noch ne kleine anmerkung ;)

falls das mal mehrere bretter betreffen sollte, kann man auch so vorgehn:
1. man schreibt die nummern in eine variable zb so:  $die_nich = "2,3,4";
2. man setzt  die abfrage so um: blabla ...  AND ID_BOARD NOT IN ($die_nich)

grüßle pitti

Sampaguita

Danke für die Idee. Jetzt müsste man eigentlich das nur noch als flag in der DB einbinden, im Admin-Bereich einbinden und schon kann man gaaanz einfach jedes beliebige Board aus den Statistiken ausblenden! ;D

Pitti

per myadmin so:
INSERT INTO `smf_settings` ( `variable` , `value` )
VALUES (
'die_nich', ''
);


abruf der variable so: $modsettings[die_nich]

feddisch :)

Carino

Gibt es hierfür mittlerweile ein mod?
Ich habe auch einzelne Boards, die ich gerne aus der Statistik werfen möchte.
Sonst würde ich gerne wissen, wie ich mit der Variable arbeiten muss.

Danke im Voraus,
Carino

Advertisement: