17.12.2008, 19:14
17.12.2008, 19:24
Ich meine, ob die Variable an der Codestelle, wo du sie einfügst, überhaupt definiert ist. Wenn du das Ausrufezeichen davor setzt, ist ja genau die Umkehrung gemeint. Wenn die Variable nicht definiert ist, trifft die Bedingung dann zu, denn sie ist ja nicht gleich "Test".
17.12.2008, 19:34
Mir scheint es so, als sei $mybb->thread['prefix'] nicht definiert.
Wie könnte ich das definieren?
Wie könnte ich das definieren?
19.12.2008, 13:18
Nicht getestet: Öffne die Plugindatei und suche nach
Darunter einfügen:
PHP-Code:
$db->update_query("threads", array("prefix"=>$prefix['title']), "tid=".$tid);
PHP-Code:
if($mybb->user['usergroup'] == "4" && $prefix['title'] == "Test")
{
$db->update_query("users", array("postnum" => "postnum-1"), "uid={$mybb->user['uid']}");
}
19.12.2008, 13:44
ah ok. Wenn ich aber nun ein neues Thema mit dem Präfix Test erstelle, dann setzt er den Postcounter auf 0.
19.12.2008, 14:18
Das wundert mich nicht. Probiere:
PHP-Code:
if($mybb->user['usergroup'] == "4" && $prefix['title'] == "Test")
{
$db->write_query("UPDATE ".TABLE_PREFIX."users SET postnum=postnum-1 WHERE uid={$mybb->user['uid']}");
}
19.12.2008, 14:21
Danke Dragon. Das funktioniert.
Eine Sache bleibt noch offen. Das mit dem neu zählen im Admin CP.
Allerdings bezweifele ich dass das ähnlich funktioniert.
Eine Sache bleibt noch offen. Das mit dem neu zählen im Admin CP.
Allerdings bezweifele ich dass das ähnlich funktioniert.
20.12.2008, 15:03
Habe mal folgendes in die recount_rebuild.php geschrieben:
Mit der inneren while schleife scheints ganz zu gehen.
Er soll eigentlich solange durchgehen, wie es Threads mit Präfixen gibt.
PHP-Code:
while($user = $db->fetch_array($query))
{
$query2 = $db->simple_select("posts", "COUNT(pid) AS post_count", "uid='{$user['uid']}' AND visible > 0{$fids}");
$num_posts = $db->fetch_field($query2, "post_count");
$db->update_query("users", array("postnum" => intval($num_posts)), "uid='{$user['uid']}'");
while($prefix['title'] == "News")
{
$db->update_query("users SET postnum=postnum-1 WHERE uid={$mybb->user['uid']}");
}
}
Mit der inneren while schleife scheints ganz zu gehen.
Er soll eigentlich solange durchgehen, wie es Threads mit Präfixen gibt.
20.12.2008, 17:30
Versuchs mal damit:
PHP-Code:
$comma = "";
$gettestthreads = $db->simple_select("threads", "tid", "prefix='Test'");
while($threads = $db->fetch_array($gettestthreads))
{
$testthreads .= $comma.$threads['tid'];
$comma = ",";
}
while($user = $db->fetch_array($query))
{
$query2 = $db->simple_select("posts", "COUNT(pid) AS post_count", "uid='{$user['uid']}' AND tid NOT IN ({$testthreads}) AND visible > 0{$fids}");
$num_posts = $db->fetch_field($query2, "post_count");
$db->update_query("users", array("postnum" => intval($num_posts)), "uid='{$user['uid']}'");
}
20.12.2008, 17:44
Vielen Dank Michael. Das klappt.
Allerdings werden jetzt weitere Antworten in dem Thema dann abgezogen wenn ich neu zählen lasse.
Das möchte ich vermeiden. Geht das auch? Also es soll immer nur der erste Beitrag nicht gezählt werden.
Allerdings werden jetzt weitere Antworten in dem Thema dann abgezogen wenn ich neu zählen lasse.
Das möchte ich vermeiden. Geht das auch? Also es soll immer nur der erste Beitrag nicht gezählt werden.