Pagina 1 van 1

tellen.

Geplaatst: 02 aug 2004, 15:16
door LazyTiger
een sql waar ik niet aan uit kom.

ik heb een tabel waar ook de user_id's worden ingevuld.
nu zou ik graag willen dat hij alle user_id's tellen.
dus dat ik zo'n resultaat krijg als:
Id | aantal
145 30x
2 23x
56 120x

maar hoe?

Geplaatst: 02 aug 2004, 15:25
door WebSiteNet
ff rrn probeersel gemaakt. Zie maar wat je er mee doet. Als je het niet snapt zeg je het maar:

Code: Selecteer alles

$sql = "SELECT user_id FROM phpbb_tabel";
if( !($result = $db->sql_query($sql)) )
{
    message_die(GENERAL_ERROR, 'Could not query user id\'s', '', __LINE__, __FILE__, $sql);
}
$ids = array();
while($row = $db->sql_fetchrow($result))
{
    if( $ids[$row['user_id']] )
    {
        $ids[$row['user_id']]++;
    }
    else
    {
        $ids[$row['user_id']] = 1;
    }
}
while( list($k, $v) = each($ids) )
$template->assign_block_vars('user_id', array(
    "USER_ID" => $k,
    "FREQ" => $v)
);

Geplaatst: 02 aug 2004, 15:33
door LazyTiger
dat werkt! bedankt.

hoe sorteer je het op "aantal keer"?

Geplaatst: 02 aug 2004, 15:39
door WebSiteNet
Daarvoor gebruik de de functie sort.

Bij gewoon sort word de index niet bewaard en krijg je dus verkeerde waardes bij verkeerde waardes.

Kijk op php.net bij de functies asort(), arsort(), ksort() en krsort().