login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Join + 3tabellen

Offline lasdesigner - 23/02/2008 15:52
Avatar van lasdesignerPHP beginner Hallo!

Ik ben bezig met een site waarbij ik in 1 tabel heb staan:
- Id
- Flower_id
- Klant_id

tabel Flower:
- Id
- Naam
- Kleur

tabel Klant:
- Id
- Naam
- Adres

Nu wil ik alles van klant en Flower eruit halen, maar kan ik dit doen in 1 query? Want ik heb voorbeelden van JOINS bekeken, maar dat is altijd met 2 tabellen.

3 antwoorden

Gesponsorde links
Offline Dlol - 23/02/2008 15:59 (laatste wijziging 23/02/2008 16:09)
Avatar van Dlol Lid Ik denk dat eht niet gaat in 1 query. haalt eerst met een query alle gegevens op van de klant:

  1. $id = "1";
  2. $query = "SELECT * FROM de tabelnaam met id, flower_id en klant_id WHERE id=\"$id\"";
  3. $result = mysql_query($query);
  4. $gegevens = mysql_fetch_array($result);
  5. $flower_id = $gegevens[1];
  6. $klant_id = $gegevens[2];


Nu heb je flower_id en klant_id, op basis daarvan kan je weer 2 queries opstellen die alle gegevens uit de tabel Flower en Klant haalt.

Dit zal er zo uitzien:
  1. $query = "SELECT * FROM Flower WHERE Id=\"$flower_id\"";
  2. $result = mysql_query($query);
  3. $gegevens = mysql_fetch_array($result);
  4. $flower_naam = $gegevens[1];
  5. $flower_kleur = $gegevens[2];
  6.  
  7. $query = "SELECT * FROM Klant WHERE Id=\"$flower_id\"";
  8. $result = mysql_query($query);
  9. $gegevens = mysql_fetch_array($result);
  10. $klant_naam = $gegevens[1];
  11. $klant_adres = $gegevens[2];
  12.  
  13. // Nu gewoon eventjes alles echo'en
  14.  
  15. echo "De naam van de bloem is $flower_naam, de kleur van de bloem is $flower_kleur, de naam van de klant is $klant_naam en het adres van de klant is $klant_adres";


Zo, ik hoop dat je er wat aan hebt! Het kan zijn dat er ergens nog fouten zitten in de code, ik heb 'm zelf niet geprobeerd. Meld dat dan gewoon maar ff  
Offline Rik - 23/02/2008 16:55
Avatar van Rik Gouden medailleGouden medaille

Crew algemeen
Joins kan je gebruiken met zoveel tabellen als je maar wilt. In jouw geval zal deze query werken (als je eerste tabel informatie heet):
  1. SELECT k.naam, k.adres, f.naam, f.kleur
  2. FROM informatie i
  3. LEFT JOIN klant k
  4. ON i.klant_id = k.id
  5. LEFT JOIN flowers f
  6. ON i.flower_id = f.id
Offline lasdesigner - 23/02/2008 17:01
Avatar van lasdesigner PHP beginner Super Boukefalos! Die kan ik goed gebruiken, thx!
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.224s