[php/mysql] 2 tables opvragen

Pagina: 1
Acties:

  • Elect
  • Registratie: Mei 2000
  • Niet online
Ik heb 2 tables:

ELECT_artikelen_reacties en ELECT_nieuws_reacties
Nou wil ik op de frontpage een extra sectie waarin de laatste reacties staan.

Deze tables zijn zo ingedeelt:
id / art_id / date / name / message / email

Nou weet ik niet of er een makkelijkere manier is om deze tables in te delen, maar die heb ik niet kunnen ondekken.

Maar nu wil ik dus dat hij de 2 tables beide opvraagt en dan op datum uit beide databases lijst maken met "laatste reacties" (net als je op tweakers.net en fokzine.net ziet)

  • D2k
  • Registratie: Januari 2001
  • Laatst online: 31-08 10:19

D2k

wat heb je zelf al gedaan?

Doet iets met Cloud (MS/IBM)


  • bras
  • Registratie: Oktober 2000
  • Laatst online: 13-08 14:08
misschien 1 reactie table maken met daarin een extra kolom type, waarbij type staat voor nieuws of artikel.

op deze manier heb je in 1 keer al je reacties onder elkaar.

"When you find yourself in the company of a halfling and an ill-tempered Dragon, remember, you do not have to outrun the Dragon...you just have to outrun the halfling."


  • Elect
  • Registratie: Mei 2000
  • Niet online
Momenteel draaien er wel headlines die uit de ELECT_nieuws tables komen, en ook het reactie systeem werkt volledig.

dit is de code voor de headlines uit te lezen uit de ELECT_nieuws database:
PHP:
1
<? include("config.php");mysql_connect("$hostname","$username","$password"); mysql_select_db("$database"); $select ="SELECT * FROM ELECT_nieuws ORDER BY id DESC limit 5";$query = mysql_query($select); while ($list = mysql_fetch_object($query)) { $list->date = preg_replace("/(.{5}).*/s", "\\1", $list->date);$list->subject = preg_replace("/(.{23}).*/s", "\\1..", $list->subject);echo "[<font size=\"-1\">$list->date</font>]  <A HREF=\"nieuws_toon.php?id=$list->id\">$list->subject</A><BR>";}?>

  • Elect
  • Registratie: Mei 2000
  • Niet online
Op vrijdag 12 april 2002 23:00 schreef bras het volgende:
misschien 1 reactie table maken met daarin een extra kolom type, waarbij type staat voor nieuws of artikel.

op deze manier heb je in 1 keer al je reacties onder elkaar.
daar zat ik ook aan te denken, maar hoe kan ik zorgen dat het reactiesysteem het verschil ziet?

Verwijderd

Maak gewoon 1 tabel voor alles.

ID
ParentID
Date
Name
Message
Email
Type

Wanneer ParentID 0 is is het laten we zeggen een thread. Wanneer dit hoger is dan 0 dan verwijst dit weer naar een thread en is dus een reactie op iets. Zo kan je zels reactie op reactie maken. (In dat geval moet je wel een recursieve functie gebruiken.)

  • bras
  • Registratie: Oktober 2000
  • Laatst online: 13-08 14:08
door te checken op de waarde in die extra kolom (artikel of nieuws), of ik snap de vraag niet :P

"When you find yourself in the company of a halfling and an ill-tempered Dragon, remember, you do not have to outrun the Dragon...you just have to outrun the halfling."


  • Elect
  • Registratie: Mei 2000
  • Niet online
Op vrijdag 12 april 2002 23:05 schreef groencontainer het volgende:
Maak gewoon 1 tabel voor alles.

ID
ParentID
Date
Name
Message
Email
Type

Wanneer ParentID 0 is is het laten we zeggen een thread. Wanneer dit hoger is dan 0 dan verwijst dit weer naar een thread en is dus een reactie op iets. Zo kan je zels reactie op reactie maken. (In dat geval moet je wel een recursieve functie gebruiken.)
Das wel waar, maar ik wil het graag overzichtelijk houden omdat ik best wel eens alles kan verbouwen, en dat wil ik bestaande tables soms houden.
Maar de reacties mogen eventueel in een tablel, dat geeft niet..

Verwijderd

Als je maar 1 tabel gebruikt gaat dat verbouwen des te makkelijker... Hier een voorbeeldje uit m'n eigen database van m'n (nog af te maken) website:

Tabel postings:
ID
ParentID (refereert aan ID in postings)
UserID
Subject
Message
Link
Type (1 nieuws, 2 nieuws reactie, 3 thread, 4 thread reactie, 5 link, 6 poll)
Pagina: 1