Post count mod.

Installatie lukt niet? Plotseling een foutmelding. Of weet je niet hoe iets werkt. Problemen met phpBB2 kun je in dit archief opzoeken.
Forumregels

Sinds 1 januari 2009 wordt phpBB2 niet meer ondersteund.
Onderstaande informatie is verouderd en dient uitsluitend als archief.
phpBB2.0.x
Gebruikersavatar
KevinS
Berichten: 363
Lid geworden op: 23 apr 2003, 10:31

Post count mod.

Bericht door KevinS » 21 jan 2005, 20:41

Wij gebruiken de post count mod.
Dankzij deze mod hebben we de mogelijkheid om er voor te zorgen dan als iemand een bericht plaatst in een bepaald forum, het bericht niet word meegeteld in de post count van deze persoon.

Helaas word de post nu wel meegeteld in het totaal aantal posts van het hele forum.

Hoe kan ik dat stoppen?

Alvast bedankt!

Groeten,
Kevin

Gebruikersavatar
mosymuis
Berichten: 6940
Lid geworden op: 05 feb 2003, 14:00
Locatie: Amsterdam
Contacteer:

Bericht door mosymuis » 21 jan 2005, 23:28

includes/functions.php

Code: Selecteer alles

			$sql = "SELECT SUM(forum_topics) AS topic_total, SUM(forum_posts) AS post_total
				FROM " . FORUMS_TABLE;
Geef hier mbv WHERE NOT IN() aan in welke forums hij niet mag tellen.

Gebruikersavatar
KevinS
Berichten: 363
Lid geworden op: 23 apr 2003, 10:31

Bericht door KevinS » 22 jan 2005, 11:54

Ik ga het proberen, bedankt!

ct
Berichten: 11
Lid geworden op: 30 aug 2004, 18:35

Bericht door ct » 25 jan 2005, 19:40

mosymuis schreef:includes/functions.php

Code: Selecteer alles

			$sql = "SELECT SUM(forum_topics) AS topic_total, SUM(forum_posts) AS post_total
				FROM " . FORUMS_TABLE;
Geef hier mbv WHERE NOT IN() aan in welke forums hij niet mag tellen.
Uh ... hoe doe ik dat dan precies? :oops: Ik neem aan dat tussen de haakjes de forumnummers moeten die niet meegeteld moeten worden. Maar waar neem ik dat dan precies op?

Gebruikersavatar
KevinS
Berichten: 363
Lid geworden op: 23 apr 2003, 10:31

Bericht door KevinS » 25 jan 2005, 19:53

Deze code plaatst je in het bestand functions.php in de map includes

ct
Berichten: 11
Lid geworden op: 30 aug 2004, 18:35

Bericht door ct » 25 jan 2005, 20:28

Kevinos schreef:Deze code plaatst je in het bestand functions.php in de map includes
Dat snap ik :wink: Vroeg me af waar precies in dat bestand. Ik neem aan dat dat wat uitmaakt :?

ct
Berichten: 11
Lid geworden op: 30 aug 2004, 18:35

Bericht door ct » 25 jan 2005, 23:56

Uh, ik had maar "iets" gedaan, maar was duidelijk niet goed. Er kwam te staan "De gebruikers hebben in totaal 0 berichten geplaatst".

Dus als iemand deze niet zo handige dame uit kan leggen hoe het precies werkt, dan wordt dat enorm gewaardeerd :D

ct
Berichten: 11
Lid geworden op: 30 aug 2004, 18:35

Bericht door ct » 27 jan 2005, 12:44

Zonder al te ongedurig over te willen komen :oops: , kan iemand mij uitleggen waar je
Geef hier mbv WHERE NOT IN() aan in welke forums hij niet mag tellen.
nou precies in
includes/functions.php

Code: Selecteer alles

			$sql = "SELECT SUM(forum_topics) AS topic_total, SUM(forum_posts) AS post_total
				FROM " . FORUMS_TABLE;
Bij voorbaat dank!

Gebruikersavatar
mosymuis
Berichten: 6940
Lid geworden op: 05 feb 2003, 14:00
Locatie: Amsterdam
Contacteer:

Bericht door mosymuis » 30 jan 2005, 00:50

Code: Selecteer alles

         $sql = "SELECT SUM(forum_topics) AS topic_total, SUM(forum_posts) AS post_total
            FROM " . FORUMS_TABLE . "
            WHERE forum_id NOT IN(3,4,6);
:?:

Gebruikersavatar
KevinS
Berichten: 363
Lid geworden op: 23 apr 2003, 10:31

Bericht door KevinS » 13 feb 2005, 12:03

Ik krijg het niet voor elkaar waarschijnlijk omdat ik het iets verkeerd doe :?

Stukje code:
function get_db_stat($mode)
{
global $db;

switch( $mode )
{
case 'usercount':
$sql = "SELECT COUNT(user_id) AS total
FROM " . USERS_TABLE . "
WHERE user_id <> " . ANONYMOUS;
break;

case 'newestuser':
$sql = "SELECT user_id, username
FROM " . USERS_TABLE . "
WHERE user_id <> " . ANONYMOUS . "
ORDER BY user_id DESC
LIMIT 1";
break;

case 'postcount':
case 'topiccount':
$sql = "SELECT SUM(forum_topics) AS topic_total, SUM(forum_posts) AS post_total
FROM " . FORUMS_TABLE;
HERE forum_id NOT IN(3,4,6);

break;
}

if ( !($result = $db->sql_query($sql)) )
{
return false;
}

$row = $db->sql_fetchrow($result);

switch ( $mode )
{
case 'usercount':
return $row['total'];
break;
case 'newestuser':
return $row;
break;
case 'postcount':
return $row['post_total'];
break;
case 'topiccount':
return $row['topic_total'];
break;
}

return false;
}

Hierboven in vet aangegeven waar ik de code had toegepast maar dat werkt niet, zou iemand mij kunnen vertellen wat ik de code precies moet gebruiken?

Alvast bedankt!
Laatst gewijzigd door KevinS op 28 feb 2005, 22:14, 1 keer totaal gewijzigd.

Gebruikersavatar
KevinS
Berichten: 363
Lid geworden op: 23 apr 2003, 10:31

Bericht door KevinS » 13 feb 2005, 12:07

Ik krijg het niet voor elkaar waarschijnlijk omdat ik het iets verkeerd doe :?

Stukje code:

Code: Selecteer alles

         $sql = "SELECT SUM(forum_topics) AS topic_total, SUM(forum_posts) AS post_total 
            FROM " . FORUMS_TABLE . " 
            WHERE forum_id NOT IN(3,4,6); 
Functions.php:
Functions.php schreef:function get_db_stat($mode)
{
global $db;

switch( $mode )
{
case 'usercount':
$sql = "SELECT COUNT(user_id) AS total
FROM " . USERS_TABLE . "
WHERE user_id <> " . ANONYMOUS;
break;

case 'newestuser':
$sql = "SELECT user_id, username
FROM " . USERS_TABLE . "
WHERE user_id <> " . ANONYMOUS . "
ORDER BY user_id DESC
LIMIT 1";
break;

case 'postcount':
case 'topiccount':
$sql = "SELECT SUM(forum_topics) AS topic_total, SUM(forum_posts) AS post_total
FROM " . FORUMS_TABLE;

break;
}

if ( !($result = $db->sql_query($sql)) )
{
return false;
}

$row = $db->sql_fetchrow($result);

switch ( $mode )
{
case 'usercount':
return $row['total'];
break;
case 'newestuser':
return $row;
break;
case 'postcount':
return $row['post_total'];
break;
case 'topiccount':
return $row['topic_total'];
break;
}

return false;
}
Hierboven in vet aangegeven waar ik de code had toegepast maar dat werkte niet, zou iemand mij kunnen vertellen waar ik de code precies moet gebruiken?

Alvast bedankt!

Gebruikersavatar
mosymuis
Berichten: 6940
Lid geworden op: 05 feb 2003, 14:00
Locatie: Amsterdam
Contacteer:

Bericht door mosymuis » 13 feb 2005, 17:13

Kevinos schreef:maar dat werkte niet
Wat werkte niet? Wat veranderde er wel..?

Gebruikersavatar
KevinS
Berichten: 363
Lid geworden op: 23 apr 2003, 10:31

Bericht door KevinS » 28 feb 2005, 22:06

Excuses voor mijn late reactie.

Ik kreeg een parse error.

Ik weet niet waar ik de code moet toepassen?

avb

Gebruikersavatar
mosymuis
Berichten: 6940
Lid geworden op: 05 feb 2003, 14:00
Locatie: Amsterdam
Contacteer:

Bericht door mosymuis » 28 feb 2005, 22:08

Kevinos schreef:Ik kreeg een parse error.
Leuk joh.







Misschien handig om te vertellen welke, en op welke regels van toepassing?

Gebruikersavatar
Bee
Berichten: 13403
Lid geworden op: 29 aug 2004, 10:30

Bericht door Bee » 28 feb 2005, 22:08

mosymuis schreef:
Kevinos schreef:Ik kreeg een parse error.
Leuk joh.







Misschien handig om te vertellen welke, en op welke regels van toepassing?
Gewoon de hele foutmelding eigenlijk :wink:
... Maar ik modereer (nog) niet.

Gebruikersavatar
KevinS
Berichten: 363
Lid geworden op: 23 apr 2003, 10:31

Bericht door KevinS » 28 feb 2005, 22:13

http://www.phpbb.nl/viewtopic.php?p=138864#138864

Is bovenstaand bericht zie je waar ik de code heb gewijzigd.
Parse error: parse error, unexpected T_STRING in /usr/local/psa/home/vhosts/vragenforum.nl/httpdocs/test01/includes/functions.php on line 48

Dus code ziet er nu zo uit:

Code: Selecteer alles

function get_db_stat($mode)
{
	global $db;

	switch( $mode )
	{
		case 'usercount':
			$sql = "SELECT COUNT(user_id) AS total
				FROM " . USERS_TABLE . "
				WHERE user_id <> " . ANONYMOUS;
			break;

		case 'newestuser':
			$sql = "SELECT user_id, username
				FROM " . USERS_TABLE . "
				WHERE user_id <> " . ANONYMOUS . "
				ORDER BY user_id DESC
				LIMIT 1";
			break;

		case 'postcount':
		case 'topiccount':
			$sql = "SELECT SUM(forum_topics) AS topic_total, SUM(forum_posts) AS post_total
				FROM " . FORUMS_TABLE;
				HERE forum_id NOT IN(3,4,6);  
			break;
	}

	if ( !($result = $db->sql_query($sql)) )
	{
		return false;
	}
Alvast bedankt!!
Laatst gewijzigd door KevinS op 28 feb 2005, 22:21, 1 keer totaal gewijzigd.

Gebruikersavatar
mosymuis
Berichten: 6940
Lid geworden op: 05 feb 2003, 14:00
Locatie: Amsterdam
Contacteer:

Bericht door mosymuis » 28 feb 2005, 22:18

Wat is regel 48?

Gebruikersavatar
Bee
Berichten: 13403
Lid geworden op: 29 aug 2004, 10:30

Bericht door Bee » 28 feb 2005, 22:20

Ik neem aan dat dit:

Code: Selecteer alles

            HERE forum_id NOT IN[/b](3,4,6); 
niet zo in de echte code staat, want dat is SML, en dat hoort in in php code thuis ;)
... Maar ik modereer (nog) niet.

Gebruikersavatar
KevinS
Berichten: 363
Lid geworden op: 23 apr 2003, 10:31

Bericht door KevinS » 28 feb 2005, 22:20

Regel 48=

Code: Selecteer alles

				HERE forum_id NOT IN(3,4,6);  
case 'postcount':
case 'topiccount':
$sql = "SELECT SUM(forum_topics) AS topic_total, SUM(forum_posts) AS post_total
FROM " . FORUMS_TABLE;
HERE forum_id NOT IN(3,4,6);
break;

bee schreef:Ik neem aan dat dit:

Code: Selecteer alles

            HERE forum_id NOT IN[/b](3,4,6); 
niet zo in de echte code staat, want dat is SML, en dat hoort in in php code thuis ;)
Nee, zo staat het er inderdaad niet ;)

avb!

Gebruikersavatar
mosymuis
Berichten: 6940
Lid geworden op: 05 feb 2003, 14:00
Locatie: Amsterdam
Contacteer:

Bericht door mosymuis » 28 feb 2005, 22:21

Je sluit de SQL string niet af met " .
Laatst gewijzigd door mosymuis op 28 feb 2005, 22:22, 1 keer totaal gewijzigd.

Gesloten