Als ik het goed begrijp wil je alle gegevens van een gebruiker selecteren ongeacht of ze een club_id en/of crew_id hebben. En mochten zo'n id hebben, dan wil je ook de naam van de club of crew hebben?
Dat lijkt me een uitermate geschikt voorbeeld voor een LEFT JOIN. Het is niet getest, maar ik neem aan de volgende query zal werken:
SELECT
g.gebruikersnaam,
g.club_id,
g.crew_id,
g.voornaam,
g.achternaam,
g.gebruiker_id,
g.staff_level,
g.site_level,
cr.crew_id,
cr.crew_naam,
cl.club_id,
cl.club_naam
FROM
gebruikers AS g
LEFT JOIN crews AS cr
ON g.crew_id = cr.crew_id
LEFT JOIN clubs AS cl
ON g.club_id = cl.club_id
WHERE
g.gebruikersnaam = '".$gebruikersnaam."'
You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'LEFT JOIN crews AS cr ON g.crew_id = cr.crew_id LEFT JOIN
Een LEFT JOIN haalt alle resultaten uit de eerste tabel op ook als er geen matches zijn met een 2e tabel. Als er wel matches zijn met de 2e tabel worden ook die gegevens opgehaald, anders wordt er voor die velden NULL teruggegeven. Zie ook de pagina voor wat uitleg over joins.
Wat betreft de error: er stond nog een komma teveel. Aangepast in vorige post.