Hoi Iedereen,

Ik ben nog niet z'n kei in PHP maar doe mijn best.
Ik wil de 9 laatste resultaten halen uit 6 verschillende tables.
Kan dat en hoe? Ik kan het alleen op een volgens mij HELE omslachtige manier bedenken om eerst alles uit alle 6 te halen, te vergelijken op dtime enz. Maar dat moet toch makkelijker kunnen?

Ik dacht iets van:

SELECT id, duration FROM table1, table2, table3, table4, table5, table6 ORDER BY dtime LIMIT 9

Maar dat is iets te simpel gedacht blijkbaar.

Graag hoor ik van jullie!!

Maar dat is iets te simpel gedacht blijkbaar.


Yep, en als je data uit meerdere tabellen wilt halen dan dien je te joinen ander gaat het resultaat simpelweg niet kloppen.

Maar ja, het is de oplossing ook niet. En zo te zien schiet je basis kennis van SQL ook te kort, want dan had je deze vraag niet hoeven te stellen.

Mischien dat je met het volgende woord iets kan aanvangen: BASHKIMI
Je zou het toch via een echo kunnen doen ? Je maakt een bestandje aan en zet daar de resultaten.

Vervolgens laat je ze via include naar voren komen op de pagina die jij wilt.
BASHKIMI?????? Gooi dat eens in google.....
@Jake: Je datamodel lijkt niet helemaal in orde??
Ik heb even BASHKIMI geprobeerd kan inmiddels nu wel basketballen en voetballen... is goed voor het lichaam maar ik zoek iets voor mijn geest! ;-) LOL

Ok... Dus moet ik opzoek naar JOIN? is dat het beste?
JOIN kan.

Misschien dat je wat echte query dingen kunt tonen.

pseudo zou zoiets dus ook kunnen:

[code]
SELECT tabel1.foo, tabel2.user
FROM tabel1, tabel2
WHERE
tabel1.id = tabel2.user_id;
[code]
Ik ben eigenlijk al wat verder... maar loop nu wel tegen het volgende aan.

Ik heb nu (let op table loopt straks tot 6 ipv nu 3):

$query = mysql_query("(SELECT * FROM table1) UNION (SELECT * FROM table2) UNION (SELECT * FROM table3) ORDER BY dtime LIMIT 9",$connect) or die("kan query niet maken");

while($myrow = mysql_fetch_assoc($query)){
$id = $myrow['id'];
$link = $myrow['link'];
$titel = $myrow['titel'];
$duration = $myrow['duration'];
echo "<div id='youtubeItem'><div id='youtubeItemDuration'>$duration</div><a href='tv-detail.php?cat=tableName&id=$id'><img src='http://img.youtube.com/vi/".$link."/default.jpg' width='171' height='120' border='0' class='itemBorder' /></a>";
echo "<h2>$title</h2><br /></div>";
};

Volgens mij werkt dit. Maar in mijn result heb ik eigenlijk de naam van de table nodig om te verwerken. Je ziet in de href heb ik cat = tablenaam staan... hmmmm.
Hoe moet ik die er nu weer aan hangen?

Iemand een idee?

Alvast bedankt!!



Toevoeging op 18/11/2011 16:27:29:

Nou ik heb het zelf opgelost door in de tabellen ook de cat toetevoegen zodat ik dat kan gebuiken. Toch bedankt voor de hulp!!

Gr,

Jake
Mooi dat het gelukt is, maar zoals als Aad ook al aangaf heb je de database niet helemaal goed opgebouwd. Het is beter om niet voor iedere categorie een tabel te maken, maar een tabel met de categorien en een tabel met alle filmpjes. Op die manier is het veel simpeler te beheersen.

Reageren