Avatar billede rarw Nybegynder
28. oktober 2005 - 14:36 Der er 1 kommentar og
1 løsning

Vis online brugere øverst

Hej alle sammen :)

Jeg har prøvet at spørger før og det er muligt at få ens venner på sin venneliste øverst på listen hvis de er online.

Jeg fik rigtig god hjælp men desværre virkede resultatet ikke :(

Tabellen for brugere:

CREATE TABLE `users` (
  `id` int(11) NOT NULL auto_increment,
  `brugernavn` varchar(25) NOT NULL default '',
  `password` varchar(255) NOT NULL default '',
  `navn` varchar(255) NOT NULL default '',
  `born_day` int(11) NOT NULL default '0',
  `born_month` int(11) NOT NULL default '0',
  `born_year` int(11) NOT NULL default '0',
  `landsdel` varchar(255) NOT NULL default '',
  `created` varchar(255) NOT NULL default '',
  `email` varchar(255) NOT NULL default '',
  `kon` set('Dreng','Pige') NOT NULL default '',
  `tekst` longtext NOT NULL,
  `billede` set('yes','no') NOT NULL default '',
  `postnr` int(4) NOT NULL default '0',
  `born` date NOT NULL default '0000-00-00',
  PRIMARY KEY  (`id`)
);

Min online tabel er sådan her ud:

CREATE TABLE `online_profiles` (
  `date` int(11) NOT NULL default '0',
  `brugernavn` varchar(25) default NULL,
  `page` varchar(255) default NULL,
  `user_id` int(11) NOT NULL default '0'
);

Og til sidst venneliste tabellen:

CREATE TABLE `venneliste` (
  `id` int(11) NOT NULL auto_increment,
  `to_user` int(11) NOT NULL default '0',
  `from_user` int(11) NOT NULL default '0',
  `date` longtext NOT NULL,
  `godkendt` set('yes','no') NOT NULL default '',
  PRIMARY KEY  (`id`)
);

Vi kom frem til dette:

$sql = "
    SELECT
        f.*
        ,t.brugernavn as tilbruger
        ,fra.brugernavn as frabruger
        ,IF( o.user_id IS NULL, 0, 1 ) as online
    FROM
        venneliste f
    INNER JOIN
        users t
    ON
        f.to_user = t.id
    INNER JOIN
        users fra
    ON
        f.from_user = fra.id
    LEFT OUTER JOIN
        online_profiles o
    ON
        f.id = o.user_id
    WHERE
        (f.to_user = '".$_GET['id']."'
        OR f.from_user = '".$_GET['id']."')
        AND f.godkendt = 'yes'
    ORDER BY
        online
        ,f.id DESC
    LIMIT
        $vis_fra, $pr_side";


Men det sætter dem ikke øverst på vennelisten :(

Nogle der kan hjælpe ? :)
Avatar billede rarw Nybegynder
29. oktober 2005 - 11:21 #1
hmm.
Avatar billede rarw Nybegynder
08. november 2005 - 00:30 #2
PRøver igen så :S
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