<?php
                        if($reactiemode)
                        {
                                 $query1 = @mysql_query   ("    SELECT *,date_format(tijdstip, '%d/%m/%Y - %H:%i') AS tijdstip
                                                                FROM dr_onderwerp
                                                                WHERE id = '" . $_GET['oid']. "' AND zichtbaar =  '" . $_SESSION['viewaccess1'] . "'
                                                                OR paginaid = '" . $_GET['pid'] . "' AND zichtbaar =  '" . $_SESSION['viewaccess2'] . "'
                                                                OR paginaid = '" . $_GET['pid'] . "' AND zichtbaar =  '" . $_SESSION['viewaccess3'] . "'
                                                                OR paginaid = '" . $_GET['pid'] . "' AND zichtbaar =  '" . $_SESSION['viewaccess4'] . "'
                                                                OR paginaid = '" . $_GET['pid'] . "' AND zichtbaar =  '" . $_SESSION['viewaccess5'] . "'
                                                           ");




                        	$query2 = @mysql_query   ("      SELECT *,date_format(tijdstip, '%d/%m/%Y - %H:%i') AS tijdstip,tijdstip AS sorttijdstip
                                                                FROM dr_reactie
                                                                WHERE onderwerpid = '" . $_GET['oid'] . "'
                                                                ORDER BY id ASC
                                                                LIMIT $_SESSION[messagePerPage]
                                                                OFFSET $offset
                                                         ");

                        }

                        while($list = @mysql_fetch_array($query3))
                        {

                        ...

?>


Weet er iemand hoe ik de resultaten van query1 en query2 kan samenvoegen tot query3 zodat ik het in de while-lus kan gebruiken?


alvast enorm bedankt!
Je kunt waarschijnlijk de queries zelf UNION-en. Zie google voor SQL UNION. Maar ik vraag me af hoe je het precies wil hebben?
PHPerik schreef op 07.08.2007 03:53
Je kunt waarschijnlijk de queries zelf UNION-en. Zie google voor SQL UNION. Maar ik vraag me af hoe je het precies wil hebben?


Query1 geeft me resultaten met dezelfde structuur als de resultaten van query2.

Het is voor een nieuwssysteem met reacties op het nieuwsonderwerp. Ik haal eerst de inhoud,titel,... van het onderwerp op (query1) en nadien de gegevens van de reacties. Die zou ik willen samenvoegen om vervolgens in 1 layout te gieten.

Bedankt voor je tip! Ik laat weten of het lukt of niet :).

Groeten!

$query = " (SELECT *,date_format(tijdstip, '%d/%m/%Y - %H:%i') AS tijdstip
FROM dr_onderwerp
WHERE id = '" . $_GET['oid']. "' AND zichtbaar = '" . $_SESSION['viewaccess1'] . "'
OR paginaid = '" . $_GET['pid'] . "' AND zichtbaar = '" . $_SESSION['viewaccess2'] . "'
OR paginaid = '" . $_GET['pid'] . "' AND zichtbaar = '" . $_SESSION['viewaccess3'] . "'
OR paginaid = '" . $_GET['pid'] . "' AND zichtbaar = '" . $_SESSION['viewaccess4'] . "'
OR paginaid = '" . $_GET['pid'] . "' AND zichtbaar = '" . $_SESSION['viewaccess5'] . "')
UNION ALL
( SELECT *,date_format(tijdstip, '%d/%m/%Y - %H:%i') AS tijdstip,tijdstip AS sorttijdstip
FROM dr_reactie
WHERE onderwerpid = '" . $_GET['oid'] . "'
ORDER BY id ASC
LIMIT $_SESSION[messagePerPage]
OFFSET $offset
)";
Offtopic: Wanneer je een alias aanmaakt, gebruik dan wel een andere naam. In jouw huidige queries kun je namelijk niet meer sorteren op het origineel, dat blijkt al wel uit de knullige alias sorttijdstip...

date_format(tijdstip, '%d/%m/%Y - %H:%i') AS tijdstip_NL

Het origineel 'tijdstip' blijft nu gewoon bestaan en je kunt daar gewoon op sorteren. In de resultset ontvang je nu 'tijdstip_NL', die kun je bv. gaan echoen.
pgFrank schreef op 07.08.2007 12:31
Offtopic: Wanneer je een alias aanmaakt, gebruik dan wel een andere naam. In jouw huidige queries kun je namelijk niet meer sorteren op het origineel, dat blijkt al wel uit de knullige alias sorttijdstip...

date_format(tijdstip, '%d/%m/%Y - %H:%i') AS tijdstip_NL

Het origineel 'tijdstip' blijft nu gewoon bestaan en je kunt daar gewoon op sorteren. In de resultset ontvang je nu 'tijdstip_NL', die kun je bv. gaan echoen.


Handige tip!, bedankt !

Reageren