login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Meerdere tabellen, join?

Offline Erwt - 06/12/2008 17:05
Avatar van ErwtPHP beginner Hej allemaal, ik heb w3schools bekeken maar kom er echt niet uit. Ik heb nu:

  1. $query = "SELECT * FROM `gebruikers` WHERE gebruikersnaam='" . mysql_real_escape_string($_POST["gebruikersnaam"]) . "' AND wachtwoord='" . mysql_real_escape_string($_POST["wachtwoord"]) . "'";


Nu heb ik een andere tabel genaamd: websites. In deze tabel staan de velden: domein en gebruiker_id.

Naast dat gebruikersnaam en wachtwoord goed zijn, moet de gebruiker.id gelijk zijn aan de websites.id. de websites.domein moet dan weer gelijk zijn aan een waarde uit mijn formulier. Hoe werkt die join nu precies? ik heb het voorbeeld van w3schools er nog bij gehad maar krijg het niet werkend.

6 antwoorden

Gesponsorde links
Offline Wim - 06/12/2008 17:17
Avatar van Wim Crew algemeen http://www.site...ySQL/Joins
Offline Erwt - 06/12/2008 17:57
Avatar van Erwt PHP beginner Ja maar hier staat ook geen voorbeeld van met WHERE, zoals ik al .. ik heb al voorbeelden gezocht maar vind niet precies wat ik in mijn geval nu moet hebben.
Offline Wim - 06/12/2008 18:23
Avatar van Wim Crew algemeen ON (gebruiker.id = websites.id) WHERE websites.domein = "..."

Ben je trouwens zeker dat gebruiker.id gelijk is aan websites.id? (lijkt me niet de meest logische naamgeving)
Offline Diko - 06/12/2008 18:32
Avatar van Diko PHP interesse
  1. SELECT *
  2. FROM gebruikers AS g INNER JOIN websites AS w ON (g.id = w.gebruikers_id)
  3. WHERE gebruikersnaam='naam'
  4. AND wachtwoord='geheim';


Btw, jij hebt je wachtwoorden gewoon onbewerkt in de database staan? Geen encryptie of whatsoever? 
Offline Erwt - 06/12/2008 18:42 (laatste wijziging 06/12/2008 18:56)
Avatar van Erwt PHP beginner @wimmarien: klopt, het moest ook websites.gebruiker_id zijn 

@Diko: jawel, md5.. maar dat zal alleen maar domme ruimte in m'n post innemen ;) HEEL ERG BEDANKT, ik ga nu even kijken.

Ik heb nu:
  1. $query = "SELECT * FROM gebruikers as g INNER JOIN websites as w ON (g.id = w.gebruikers_id) WHERE g.gebruikersnaam='" . mysql_real_escape_string($_POST["gebruikersnaam"]) . "' AND g.wachtwoord='" . mysql_real_escape_string($_POST["wachtwoord"]) . "'";


Dus nog zonder de domein check, en nu werkt hij nog niet.


Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\wamp\www\cms\inloggen.php on line 18

Dat duidt op mijn query.
Offline Martijn - 07/12/2008 13:24 (laatste wijziging 07/12/2008 13:25)
Avatar van Martijn Crew PHP heb je 'or die(mysql_error())' achter je query?
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.362s