Avatar billede peder77 Nybegynder
14. oktober 2005 - 09:56 Der er 8 kommentarer og
1 løsning

seneste 5 forum indlæg

Jeg køre en mambo protal og har installeret modulet " Simpleboard latest 5 posts module".

Den har en php fil med følgende kode:


defined( '_VALID_MOS' ) or die( 'Direct Access to this location is not allowed.' );

$content ="";


$database->setQuery("SELECT a. * , b.id as category, b.published as published"
. "\n FROM #__sb_messages AS a, "
. "\n #__sb_categories AS b WHERE a.catid = b.id"
. "\n AND a.hold = 0 AND b.published = 1"
. "\n ORDER BY a.time DESC "
. "\n LIMIT 10 ");
$meslist = $database->loadObjectList();

$enum=1;
foreach ($meslist as $mes){
$content.=$enum.": <a href=\"index.php?option=com_simpleboard&func=view& catid=".$mes->catid."&id=".$mes->id."#".$mes->id."\">".stripslashes($mes->subject)."</a><br/>";
$enum++;
}

?>

Jeg har rettet den til at vise de 10 seneste indlæg, istedet for 5.

Jeg ville gerne at det ikke var indlæg der blev vist men istedet for de emner der var blevet redigeret, som blev vist på listen. På den måde ville et emne ikke blive vist mere end en gang på lisen.
Kan man lave det?
/peter
Avatar billede dmdisco Nybegynder
14. oktober 2005 - 11:07 #1
GROUP BY emne LIMIT 10
Avatar billede peder77 Nybegynder
14. oktober 2005 - 13:26 #2
Sådan her?

defined( '_VALID_MOS' ) or die( 'Direct Access to this location is not allowed.' );

$content ="";


$database->setQuery("SELECT a. * , b.id as category, b.published as published"
. "\n FROM #__sb_messages AS a, "
. "\n #__sb_categories AS b WHERE a.catid = b.id"
. "\n AND a.hold = 0 AND b.published = 1"
. "\n GROUP BY a.time DESC "
. "\n LIMIT 10 ");
$meslist = $database->loadObjectList();

$enum=1;
foreach ($meslist as $mes){
$content.=$enum.": <a href=\"index.php?option=com_simpleboard&func=view& catid=".$mes->catid."&id=".$mes->id."#".$mes->id."\">".stripslashes($mes->subject)."</a><br/>";
$enum++;
}

?>
Avatar billede dmdisco Nybegynder
14. oktober 2005 - 14:05 #3
hvis feltet 'a.time' er emnet så ja
Avatar billede peder77 Nybegynder
14. oktober 2005 - 15:28 #4
problemet er at emnerne vises flere gange.
Altså et indlæg må kun figurere en gang.

Kan man lave det så et emne kun medtages en gang på listen?
Avatar billede dmdisco Nybegynder
14. oktober 2005 - 16:47 #5
derfor grouper du efter emne så kommer der kun 1 emne af gangen
Avatar billede peder77 Nybegynder
15. oktober 2005 - 11:20 #6
defined( '_VALID_MOS' ) or die( 'Direct Access to this location is not allowed.' );

$content ="";


$database->setQuery("SELECT a. * , b.id as category, b.published as published"
. "\n FROM #__sb_messages AS a, "
. "\n #__sb_categories AS b WHERE a.catid = b.id"
. "\n AND a.hold = 0 AND b.published = 1"
. "\n GROUP BY a.subject DESC "
. "\n LIMIT 10 ");
$meslist = $database->loadObjectList();

$enum=1;
foreach ($meslist as $mes){
$content.=$enum.": <a href=\"index.php?option=com_simpleboard&func=view& catid=".$mes->catid."&id=".$mes->id."#".$mes->id."\">".stripslashes($mes->subject)."</a><br/>";
$enum++;
}

viser lidt af vejret.
de samme emner bliver medtaget og der er ihvertfald ikke ordnet efter hvornår der sidst er redigert i dem
Avatar billede dmdisco Nybegynder
17. oktober 2005 - 09:30 #7
$database->setQuery("SELECT a. * , b.id as category, b.published as published"
. "\n FROM #__sb_messages AS a, "
. "\n #__sb_categories AS b WHERE a.catid = b.id"
. "\n AND a.hold = 0 AND b.published = 1"
. "\n GROUP BY a.subject ORDER BY a.time DESC "
. "\n LIMIT 10 ");
Avatar billede peder77 Nybegynder
20. oktober 2005 - 11:06 #8
Den skal sortere dem efter tid(time) og kun medtage ET indlæg fra hver emne (subject).
Avatar billede peder77 Nybegynder
19. november 2005 - 12:32 #9
Jeg lukker her
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester