YourWBB


yourWBB » WoltLab Burning Board Generation 2 * » Alles von und für das WBB Lite 1.0.x » [WBB Lite 1.0.x] Allg. Fragen und Probleme » replycount zählt gelöschte Posts » Hallo Gast [Anmelden|Registrieren]
Letzter Beitrag | Erster ungelesener Beitrag 3.458 Views | | Thema zu Favoriten hinzufügen

Neues Thema erstellen Antwort erstellen

Dieses Thema wurde als erledigt markiert. Thread erledigt

Zum Ende der Seite springen replycount zählt gelöschte Posts
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
zebracamouflage zebracamouflage ist weiblich
Mitglied


Dabei seit: 28.01.15
Beiträge: 33
Fähigkeiten: WBB Lite 1 Anfänger
Forenversion: Lite 1.0

 replycount zählt gelöschte Posts Antworten Zitieren Editieren Melden       UP

Problembeschreibung:
Bei uns werden für die jeweiligen Themen auch gelöschte Posts mitgezählt, sodass es immer erstmal so aussieht, als wären Antworten vorhanden, obwohl bereits alle gelöscht wurden.

Link zum Forum:
http://hometonight.bplaced.de/wbblite/index.php?sid=

Ich wäre dankbar, wenn jemand einen Lösungsansatz hat und mir sagen kann, wo/wie ich einstellen kann, dass nur die tatsächlich vorhandenen Antworten gezählt werden. Floeten
10.02.15 18:45 zebracamouflage ist offline E-Mail WWW Finden Als Freund hinzufügen
Pigsel
Mitglied


images/avatars/avatar-5749.gif

Dabei seit: 05.09.11
Beiträge: 774
Fähigkeiten: WBB Lite 1 Fortgeschritten
Forenversion: Lite 1.0

Antworten Zitieren Editieren Melden       UP

auf welchem Weg sind die Beiträge gelöscht worden? mit "qucikydelete"?

was du tun kannst, ist die Beitragszahl in der Datenbank korigieren, ist zwar aufwändig aber leider hilft das nichts ..

dann ggf. einen richtigen "Löschhack einbauen der auch die LöschAnweisung an die Datenbank weiter reicht

und dann sollte das zukünftig kein Problem mehr sein

__________________
Ein Leben ohne CodeBug's ist ein Leben im Paradies

10.02.15 22:35 Pigsel ist offline E-Mail Finden Als Freund hinzufügen
zebracamouflage zebracamouflage ist weiblich
Mitglied


Dabei seit: 28.01.15
Beiträge: 33
Fähigkeiten: WBB Lite 1 Anfänger
Forenversion: Lite 1.0

Themenstarter Thema begonnen von zebracamouflage
Antworten Zitieren Editieren Melden       UP

ah, du hast recht! läuft über quickdelete.
Das Ding ist nur: über whoposted bekomm ich bei "Beiträge gesamt" auch die korrekte Anzahl angezeigt, also ohne die gelöschten. Irgendwo scheint ers ja also doch zu raffen?! Ist nur die Frage, wie man das auch in die eigentliche Tabelle überträgt.

Dateianhang:
jpg screenshottmht112015.jpg (32 KB, 69 mal heruntergeladen)
11.02.15 14:11 zebracamouflage ist offline E-Mail WWW Finden Als Freund hinzufügen
Pigsel
Mitglied


images/avatars/avatar-5749.gif

Dabei seit: 05.09.11
Beiträge: 774
Fähigkeiten: WBB Lite 1 Fortgeschritten
Forenversion: Lite 1.0

Antworten Zitieren Editieren Melden       UP

den whoposted kenne ich leider nicht, aber das es falsch dargestellt wird in "board.php und thread.php das kann man loswerden denk ich wenn man den quickydelete wieder ausbaut ... bzw. den Einbau rückgängig macht Augenzwinkern

und dann kann es hilfreich sein auch maldie "anzeigen" zu "aktualisieren" im ACP

wenn das ales nicht hilft, kann man sich das immernoch vorOrt anschauen

__________________
Ein Leben ohne CodeBug's ist ein Leben im Paradies

11.02.15 14:23 Pigsel ist offline E-Mail Finden Als Freund hinzufügen
Beckebans Beckebans ist männlich
Alternativ Mitglied


images/avatars/avatar-5856.jpg

Dabei seit: 10.07.05
Beiträge: 481
Fähigkeiten: WBB Lite 1 Fortgeschritten
Herkunft: Paderborn
Forenversion: Lite 1.0

Antworten Zitieren Editieren Melden       UP

Die "whoposted"-Funktion zählt das direkt, anstatt einen Wert aus der Datenbank auszulesen.

Als Lösung hilft es nur einen fehlerfreien Hack zum Löschen einzubauen.

Bis dahin kannst du dir diesen Code einbauen und damit im ACP die Anzeigen manuell aktualisieren:

==> acp/otherstuff.php

Suche:
php:
1:
?>

Darüber einfügen:
php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
if($action=="boardposts") {
  $result=$db->query("SELECT boardid FROM bb".$n."_boards ORDER BY boardid ASC");
  while($row=$db->fetch_array($result)) {
    $postcount $db->query_first("SELECT COUNT(*) AS countp FROM bb".$n."_posts p LEFT JOIN bb".$n."_threads t ON (p.threadid=t.threadid) WHERE t.boardid='$row[boardid]' AND p.visible=1");
    $board $db->query_first("SELECT childlist FROM bb".$n."_boards WHERE boardid='$row[boardid]'");
    $count $postcount[countp];
    if($board[childlist] != "0") {
     $childlist explode(","$board[childlist]);
     for($i 0$i count($childlist); $i++ ) { 
      if($childlist[$i] != "0") {
       $postcount_childboard $db->query_first("SELECT COUNT(*) AS countp FROM bb".$n."_posts p LEFT JOIN bb".$n."_threads t ON (p.threadid=t.threadid) WHERE t.boardid='$childlist[$i]' AND p.visible=1");
       $count $count $postcount_childboard[countp];
      }
     }
    }
    $db->unbuffered_query("UPDATE bb".$n."_boards SET postcount='$count' WHERE boardid='$row[boardid]'",1);
  }
  eval("print(\"".gettemplate("working_done")."\");");
}

if($action=="boardthreads") {
  $result=$db->query("SELECT boardid FROM bb".$n."_boards ORDER BY boardid ASC");
  while($row=$db->fetch_array($result)) {
    $threadcount=$db->query_first("SELECT COUNT(*) AS countthreads FROM bb".$n."_threads WHERE boardid='$row[boardid]' AND visible=1");
    $board $db->query_first("SELECT childlist FROM bb".$n."_boards WHERE boardid='$row[boardid]'");
    $count $threadcount[countthreads];
    if($board[childlist] != "0") {
     $childlist explode(","$board[childlist]);
     for($i 0$i count($childlist); $i++ ) { 
      if($childlist[$i] != "0") {
       $threadcount_childboard $db->query_first("SELECT COUNT(*) AS countthreads FROM bb".$n."_threads WHERE boardid='$childlist[$i]' AND visible=1");
       $count $count $threadcount_childboard[countthreads];
      }
     }
    }
    $db->unbuffered_query("UPDATE bb".$n."_boards SET threadcount='$count' WHERE boardid='$row[boardid]'",1);
  }
  eval("print(\"".gettemplate("working_done")."\");");
}

if($action=="threadreplys") {
  $result=$db->query("SELECT threadid FROM bb".$n."_threads ORDER BY threadid ASC");
  while($row=$db->fetch_array($result)) {
      $threadreply=$db->query_first("SELECT COUNT(postid) AS countreply FROM bb".$n."_posts p LEFT JOIN bb".$n."_threads t ON (p.threadid=t.threadid) WHERE t.threadid='$row[threadid]'");
      $countreply=$threadreply[countreply]-1;
      $db->unbuffered_query("UPDATE bb".$n."_threads SET replycount='$countreply' WHERE threadid='$row[threadid]'",1);
  }
  eval("print(\"".gettemplate("working_done")."\");");
}




==> acp/templates/otherstuff.php

Suche:
code:
1:
2:
</body>
</html>

Darüber einfügen:
code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
<form name="form4" action="#" method="post">
 <table cellpadding="4" cellspacing="1" border="0" class="tblborder" width="95%" align="center">
  <tr class="tblhead">
   <td colspan="2">Zählung der Boardbeiträge</td>
  </tr>
  <tr class="secondrow">
   <td colspan="2" align="center"><b>Achtung:</b> Vor dem Aktualisieren sollten die Foren synchronisiert werden. Dabei erfolgt automatisch eine Weiterleitung auf die Forenübersicht.<br><br><input type="button" value="Synchronisieren" onclick="window.location.href='board.php?action=sync&sid=$session[hash]'"> <input type="button" value="Aktualisieren" onclick="update(this.form.action.value,0)"></td>
  </tr>
 </table>
 <input type="hidden" name="action" value="boardposts">
</form>

<form name="form5" action="#" method="post">
 <table cellpadding="4" cellspacing="1" border="0" class="tblborder" width="95%" align="center">
  <tr class="tblhead">
   <td colspan="2">Zählung der Boardthemen</td>
  </tr>
  <tr class="secondrow">
   <td colspan="2" align="center"><b>Achtung:</b> Vor dem Aktualisieren sollten die Foren synchronisiert werden. Dabei erfolgt automatisch eine Weiterleitung auf die Forenübersicht.<br><br><input type="button" value="Synchronisieren" onclick="window.location.href='board.php?action=sync&sid=$session[hash]'"> <input type="button" value="Aktualisieren" onclick="update(this.form.action.value,0)"></td>
  </tr>
 </table>
 <input type="hidden" name="action" value="boardthreads">
</form>

<form name="form6" action="#" method="post">
 <table cellpadding="4" cellspacing="1" border="0" class="tblborder" width="95%" align="center">
  <tr class="tblhead">
   <td colspan="2">Zählung der Antworten</td>
  </tr>
  <tr class="secondrow">
   <td colspan="2" align="center"><input type="button" value="Aktualisieren" onclick="update(this.form.action.value,0)"></td>
  </tr>
 </table>
 <input type="hidden" name="action" value="threadreplys">
</form>


__________________
Meine Hacks:

- Userpage
- Geburtstagsliste
- Beitrag bedanken
- User verlinken
- PHP-Fehler anzeigen
- Umfragedauer
- Neue Beiträge während Eigenem
- Gruppenspezifische Mitgliederliste
- und weitere...

11.02.15 17:26 Beckebans ist offline E-Mail WWW Finden Als Freund hinzufügen
zebracamouflage zebracamouflage ist weiblich
Mitglied


Dabei seit: 28.01.15
Beiträge: 33
Fähigkeiten: WBB Lite 1 Anfänger
Forenversion: Lite 1.0

Themenstarter Thema begonnen von zebracamouflage
Antworten Zitieren Editieren Melden       UP

Alles klar, danke euch beiden. Dann wissen wir vor allem auch, wo überhaupt das Problem liegt und werden über kurz oder lang wohl den quickydelete gegen einen anderen Löschen-Hack austauschen Augenzwinkern
11.02.15 21:21 zebracamouflage ist offline E-Mail WWW Finden Als Freund hinzufügen
Baumstruktur | Brettstruktur
Gehe zu:

Neues Thema erstellen Antwort erstellen

yourWBB » WoltLab Burning Board Generation 2 * » Alles von und für das WBB Lite 1.0.x » [WBB Lite 1.0.x] Allg. Fragen und Probleme » replycount zählt gelöschte Posts