ik heb een tabel: session, hier wordt bij inloggen oa de username in opgeslagen.
en ik heb een tabel user, hier staat alle informatie in over de gebruiker oa de username.
nu heb ik dat in mijn formulier de username van de ingelogde gebruiker wordt weergegeven.
maar ik wil meer informatie in het formulier weergeven, bijv straat postcode enz.
mijn vraag: kan ik de username van de session tabel vergelijken met de username van de user tabel en op deze manier dus meer gegevens van de ingelogde gebruiker kunnen oproepen?
kan iemand mij hiermee verder helpen?
Ja dat kan, maar dat is niet de gebruikelijke manier. De username wordt nu namelijk dubbel opgeslagen en dat probeer je altijd te voorkomen.

In de sessions tabel hoor je eigenlijk alleen het id van de user uit de users tabel op te slaan en vervolgens kun je aan de hand van het id uit de sessions tabel alle gegevens over een bepaalde user uitlezen.

Bijvoorbeeld:

SELECT
    u.naam,
    u.straat,
    u.postcode
FROM
    users AS u,
    sessions AS s
WHERE
    u.id = s.user_id
AND
    s.user_id = 1;

Mocht je je eigen situatie aan willen houden, dan kun je in bovenstaande query de id's natuurlijk vervangen door de naam.
Heb je een eigen session-handler geschreven die de data in een tabel opslaat? Dan heb je binnen PHP nog steeds gewoon de beschikking over $_SESSION met daarin bv. de username van iemand die je daar net in hebt gezet:
$_SESSION['usernam'] = $_POST['username'];

Wanneer je vervolgens in jouw database deze data wilt gaan vergelijken met data in een tabel, geef je gewoon de session als vergelijkingsmateriaal op:
SELECT * FROM users WHERE username = '$_SESSION['username']

Het is niet aan te raden om de data in de tabel met sessies te gaan matchen met data in de overige tabellen, daar is met geen mogelijkheid een verband tussen te leggen, de foreignkey's. Er kan gewoon teveel verschillende data in een sessie staan en dat is niet genormaliseerd.
okeey dit maakt een hoop duidelijk!
ik heb in de sessions en user tabel ook een id staan, als ik het goed begrijp kan ik deze dus het beste gebruiken.
bedankt voor je voorbeeldje, ik ga eens even verder proberen!
Ik heb even wat geprobeerd maar ik kom er niet helemaal uit.
ten eerste krijg ik de foutmelding dat de tabel niet bestaat.
ik heb de u vervangen door de tabel naam, maar dit bood geen uitkomst
miss komt het omdat ik niet helemaal begrijp wat er precies gebeurt...?


SELECT // gewenste kolommen uitlezen, maar waarom de u in dit voorbeeld ervoor?
    u.naam,
    u.straat,
    u.postcode
FROM // 
    users AS u,
    sessions AS s
WHERE
    u.id = s.user_id
AND
    s.user_id = 1; 
 

wat doen AS precies?
en waarom op het einde AND?
u en s zijn aliasses voor de tabellen users en sessions. Als je de aliasses weg zou laten zou je dit krijgen:

SELECT
    users.naam,
    users.straat,
    users.postcode
FROM
    users,
    sessions
WHERE
    users.id = sessions.user_id
AND
    sessions.user_id = 1;


Syntax is altijd "tabelnaam.kolomnaam". Snap je het nu? Kloppen je tabelnamen? Of moet het user zijn in plaats van users?
okeey dit maakt nog weer een hoop duidelijk!
maar ik blijf de foutmelding krijgen dat de tabellen niet bestaan
ik heb de namen van de tabellen en kolommen gecheck en gecheckt n dat moet ok zijn.
dit is wat ik heb:

include "../connect.php"; //verbinding maken
$query = "SELECT jos_users.name, jos_users.username 
FROM `jos_users, jos_session` 
WHERE jos_users.id = jos_session.userid ";
$sql = mysql_query($query) or die ( mysql_error( ) );

ik blijf dus de foutmelding krijgen dat de tabellen niet bestaan
terwijl de namen volgens mij kloppen en er zit volgens mij ook geen typ fout in.
Argh, smerige backticks :S

Hoogstwaarschijnlijk zorgen die smerige dingen op regel 3 voor de problemen. Backticks horen niet thuis in een SQL query, weggooien dus...
jos_users ? Is dan ook een klaas_users? Zo ja, dan ben je druk bezig om bugs en problemen in je systeem te bouwen. Normaliseren is de basis van een goed systeem.
nee jos users is de naam van de tabel ;)
het werkt nu naar behoren bedankt voor de reacties!
Ik dacht dat ik het werkend had maar hij pakt gewoon het eerste reccord uit de database! dus als meerdere gebruikers onine zijn pakt hij voor iedereen het eerste record!
u probeer ik het d.mv session ik krijg geen foutmeldingen maar er verschijnt ook niks! ziet iemand miss of ik iets fout doe?
het lijkt me zo tog wel goed geformuleerd?
ik maak trouwens gebruik van een joomla site waar ik de sessies van wil uitlezen maar dat maakt tog niet veel uit lijkt mij

$query = "SELECT jos_users.name, jos_users.username FROM jos_users  WHERE jos_users.id = '".$_SESSION['userid']."'";

Reageren