Jetzt kostenlos Anmelden!

Muetze Männlich

Ein Pazifist mit der Waffe in der Hand

Beiträge: 681

Geschlecht: Männlich

Wohnort: zu Hause

PHPKIT Version: 1.6.5

1

Donnerstag, 11. März 2010, 20:57

Beitrag vom Beitragszähler abziehen beim löschen von Beiträgen

Wie Ihr denke ich wisst, werden gezählte Beiträge nicht vom Beitragszähler abgezogen, wenn ein Beitrag gelöscht wird von dem betroffenen User. Wer das aber möchte geht wie folgt vor...

suche in der pkinc/public/forumseditpost.php nach:

PHP-Quelltext

1
2
3
elseif($ACTION==$_POST['delete'] && $_POST['delete_confirm']=="confirmed")
    {
    $SQL->query("DELETE FROM ".pkSQLTAB_FORUM_POST." WHERE forumpost_id='".$postid."' LIMIT 1");


und fügt darunter folgendes ein:

PHP-Quelltext

1
2
3
/* "Beitrag vom Beitragszähler abziehen beim löschen von Beiträgen by" Muetze Blutrausch-Gilde.com */
    $SQL->query("UPDATE ".pkSQLTAB_USER." SET user_posts=user_posts-1 WHERE user_id='".$forumpost['forumpost_autorid']."'");
/* "Beitrag vom Beitragszähler abziehen beim löschen von Beiträgen by" Muetze Blutrausch-Gilde.com */


Das war's schon.
Wollte das MiniTeil nicht verlinken. Hier im KNW ist das ja auch gut aufgehoben. :D

MfG
Mütze
Es geht nicht darum zu haben was man will, sondern zu schätzen was man hat!
Blutrausch HP

Mauern sind auch nur Steine & Wassertropen können auch mal Wassermengen werden!
  • Zum Seitenanfang
  • Zum Seitenende

reddevil82 Männlich

BFM Stream Cheffe

Beiträge: 1 712

Geschlecht: Männlich

PHPKIT Version: 1.6.5

2

Donnerstag, 11. März 2010, 21:54

Gute Idee

Würde die WHERE nur noch mit $SQL->i absichern

Also so:

PHP-Quelltext

1
2
3
/* "Beitrag vom Beitragszähler abziehen beim löschen von Beiträgen by" Muetze Blutrausch-Gilde.com */
            $SQL->query("UPDATE ".pkSQLTAB_USER." SET user_posts=user_posts-1 WHERE user_id='".$SQL->i($forumpost['forumpost_autorid'])."'");
/* "Beitrag vom Beitragszähler abziehen beim löschen von Beiträgen by" Muetze Blutrausch-Gilde.com */
Seit 02.07.2010 Papa einer süssen Tocher !!!!

http://www.burnerfm.de

Mit den besten Hits der 80´s, 90´s und von heute. Plus einigen PHPKit Addons... uvm.
  • Zum Seitenanfang
  • Zum Seitenende

Muetze Männlich

Ein Pazifist mit der Waffe in der Hand

Beiträge: 681

Geschlecht: Männlich

Wohnort: zu Hause

PHPKIT Version: 1.6.5

3

Donnerstag, 11. März 2010, 21:56

Was macht das jetzt für ein Unterschied?
Es geht nicht darum zu haben was man will, sondern zu schätzen was man hat!
Blutrausch HP

Mauern sind auch nur Steine & Wassertropen können auch mal Wassermengen werden!
  • Zum Seitenanfang
  • Zum Seitenende

Proggi Männlich

schaut regelmäßig rein

Beiträge: 263

Geschlecht: Männlich

Wohnort: Berlin

PHPKIT Version: 1.6.5

4

Freitag, 12. März 2010, 08:10

Kleine Anmerkung meinerseits ;)

In der Datei forumsnewpost.php ist diese Stelle vorhanden:

PHP-Quelltext

1
2
3
4
5
if(pkGetUservalue('id'))
                {
                $userposts $SQL->fetch_array($SQL->query("SELECT COUNT(*) FROM ".pkSQLTAB_FORUM_POST." WHERE forumpost_autorid='".pkGetUservalue('id')."'"));
                $SQL->query("UPDATE ".pkSQLTAB_USER." SET user_posts='".$userposts[0]."' WHERE user_id='".pkGetUservalue('id')."'");
                }


Wenn ein User also einen neuen Beitrag erstellt, wird in der Tabelle prefix_forum_post nach Posts des Users gesucht und somit gezählt. Wurde also ein Beitrag gelöscht und der User schreibt einen neuen, so stimmt die Zahl wieder.

Nichts desto Trotz ist Deine Möglichkeit, den Post gleich abzuziehen auch sehr schön :thumbup:

Zum $SQL->i():
Bei Eingaben von Usern sollte man dieses einsetzen und sich somit absichern, dass auch wirklich eine Zahl ankommt. Da allerdings die Zahl aus der DB abgerufen wird und man weiß, dass es eine Zahl ist, muss es nicht unbedingt sein. Trotzdem ist eine Absicherung immer gut. Lieber zuviel als zuwenig solange es die Benutzerführung nicht zu sehr negativ beeinträchtigt ;)


Netten Gruß Andy --- Proggi
Es gibt viel zu tun - packen wir es an.....


  • Zum Seitenanfang
  • Zum Seitenende

Muetze Männlich

Ein Pazifist mit der Waffe in der Hand

Beiträge: 681

Geschlecht: Männlich

Wohnort: zu Hause

PHPKIT Version: 1.6.5

5

Freitag, 12. März 2010, 12:45

Habe ich auch gedacht, aber bei mir war es nicht der Fall, deswegen habe ich geschaut, wie ich das ändern kann.
Außerdem hat man es so sofort.

MfG
Es geht nicht darum zu haben was man will, sondern zu schätzen was man hat!
Blutrausch HP

Mauern sind auch nur Steine & Wassertropen können auch mal Wassermengen werden!
  • Zum Seitenanfang
  • Zum Seitenende

reddevil82 Männlich

BFM Stream Cheffe

Beiträge: 1 712

Geschlecht: Männlich

PHPKIT Version: 1.6.5

6

Freitag, 12. März 2010, 14:36

Wie Proggi bereits erwähnte ist das ne Absicherung vor SQL Injection. Es ist zwar wie bereits erwähnt hier nicht unbedingt notwendig, nur rate ich dir es dir trotzdem gleich anzugewöhnen bei Zahlen mit $SQL->i was für integer steht und mit $SQL->f was für real_escape_string steht db abfragen vor "hackern" zu schützen
Seit 02.07.2010 Papa einer süssen Tocher !!!!

http://www.burnerfm.de

Mit den besten Hits der 80´s, 90´s und von heute. Plus einigen PHPKit Addons... uvm.
  • Zum Seitenanfang
  • Zum Seitenende