Pagina 1 van 2

Post count mod.

Geplaatst: 21 jan 2005, 20:41
door KevinS
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

Geplaatst: 21 jan 2005, 23:28
door mosymuis
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.

Geplaatst: 22 jan 2005, 11:54
door KevinS
Ik ga het proberen, bedankt!

Geplaatst: 25 jan 2005, 19:40
door ct
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?

Geplaatst: 25 jan 2005, 19:53
door KevinS
Deze code plaatst je in het bestand functions.php in de map includes

Geplaatst: 25 jan 2005, 20:28
door ct
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 :?

Geplaatst: 25 jan 2005, 23:56
door ct
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

Geplaatst: 27 jan 2005, 12:44
door ct
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!

Geplaatst: 30 jan 2005, 00:50
door mosymuis

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);
:?:

Geplaatst: 13 feb 2005, 12:03
door KevinS
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!

Geplaatst: 13 feb 2005, 12:07
door KevinS
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!

Geplaatst: 13 feb 2005, 17:13
door mosymuis
Kevinos schreef:maar dat werkte niet
Wat werkte niet? Wat veranderde er wel..?

Geplaatst: 28 feb 2005, 22:06
door KevinS
Excuses voor mijn late reactie.

Ik kreeg een parse error.

Ik weet niet waar ik de code moet toepassen?

avb

Geplaatst: 28 feb 2005, 22:08
door mosymuis
Kevinos schreef:Ik kreeg een parse error.
Leuk joh.







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

Geplaatst: 28 feb 2005, 22:08
door Bee
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:

Geplaatst: 28 feb 2005, 22:13
door KevinS
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!!

Geplaatst: 28 feb 2005, 22:18
door mosymuis
Wat is regel 48?

Geplaatst: 28 feb 2005, 22:20
door Bee
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 ;)

Geplaatst: 28 feb 2005, 22:20
door KevinS
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!

Geplaatst: 28 feb 2005, 22:21
door mosymuis
Je sluit de SQL string niet af met " .