Avatar billede phpbegynder2004 Nybegynder
18. maj 2006 - 14:35 Der er 1 løsning

Join MySQL

Hej,

Jeg er ikke så god til MySQL join og beder derfor Jer om hjælp.
Jeg har et forum og starter med at udtrække trådene.
Så kører jeg min while, hvorefter jeg har to queries meres. Er det mulig at samle alle queries i én. Altså joine det hele sammen? Fælles for dem alle er, at forum.id=forum_svar.id=forum_ny.id
Desuden er forum.brugerid=users.id

Jeg kan lige forklare min kode:
I Nummer 1 udtrækker jeg trådene, samtidig med at jeg joiner med min brugertable (users) for at få sat navn på brugerid.

I nummer 2 checker jeg hvornår der sidst blev lavet et indlæg i tråden.

I nummer 3 checker jeg hvornår brugeren sidst læste tråden. Hvis brugeren ikke har læst tråden vil forum_ny ikke indeholde en række med denne brugers id, hvilket muligvis er et problem?

Her er koden:

//Nummer 1 - Match navne/nicks til brugerid
$hent_forum=mysql_query("SELECT users.nick, forum.* FROM users left join forum on users.id=forum.brugerid WHERE forum.undergruppe='$undergruppe' ORDER BY forum.id DESC limit $vis_fra, $pr_side")OR die(mysql_error());

//While loop
while($row=mysql_fetch_assoc($hent_forum)){

//Nummer 2 - Hent dato for sidste indlæg
$hent_seneste = mysql_query("SELECT dato FROM forum_svar WHERE id='".$row[id]."' ORDER by dato DESC LIMIT 1")or die(mysql_error());
$forum_svar=mysql_fetch_assoc($hent_seneste);

//Nummer 3 - Checker om brugeren har læst indlægget før.
$hent_nyeste = mysql_query("SELECT dato FROM forum_ny WHERE id='$row[id]' && brugerid='$_SESSION[id]'");
$hent_nyeste2=mysql_fetch_assoc($hent_nyeste);


Håber i forstår mit problem.

Med venlig hilsen
phpbegynder
Avatar billede phpbegynder2004 Nybegynder
22. maj 2006 - 17:21 #1
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