login  Naam:   Wachtwoord: 
Registreer je!
 Forum

selectie

Offline p1n0 - 08/12/2006 11:05 (laatste wijziging 08/12/2006 11:33)
Avatar van p1n0Nieuw lid Ik heb twee tabellen: producten en kleuren

In de tabel producten staat de naam v/h product, de artikelcode enz. en ook wit, zwart, blauw enz.

Voorbeeld tabel producten:

Productnaam ; Artnr; Wit ; Zwart ; Blauw
Product1; 666; ja; ; ja

Voorbeeld tabel kleuren:
Kleur; Code
Zwart; 123
Wit; 122
Blauw; 121

Nu wil is bij een productoverzicht een dropdown tonen met de kleuren die bij het desbetreffende product mogelijk zijn, dus bij product1 mogen alleen de kleuren Wit en Blauw in de dropdown komen. Dit heb ik nodig omdat het artikelnummer afhangt van de kleur.

Iemand enig id hoe ik de juiste kleuren in de dropdown krijg?

Ik hoop dat het verhaal een btje duidelijk is  

Alvast bedankt

6 antwoorden

Gesponsorde links
Offline pj_muller00 - 08/12/2006 11:55
Avatar van pj_muller00 PHP interesse Ik denk dat ik het niet begrepen heb maar wat je wilt is bij een 'detail' overzicht van product1, er een drop down komt met wit en blauw ?

Als het dat is schrijf ik wel ff iets voor je.
Maar eerst moet ik zeker zijn.
Offline p1n0 - 08/12/2006 11:57 (laatste wijziging 08/12/2006 12:00)
Avatar van p1n0 Nieuw lid precies en hij mag zwart dus niet laten zien, maar dit is een voorbeeld er zijn een stuk of 60 kleuren!
Offline pj_muller00 - 08/12/2006 12:03
Avatar van pj_muller00 PHP interesse dus als de tabel is als volgt : ... | zwart | oranje | bruin | enz. | enz.

Dan zou ik dat toch wel eerst dringend anders aanpakken  

Maak bv. een extra tabel aan.
id | product_id | kleur_id

relatie veel op veel

dus
1 | 1 | 123
2 | 1 | 122
3 | 2 | 122

enz.
Offline p1n0 - 08/12/2006 12:45
Avatar van p1n0 Nieuw lid maar stel er staan 10.000 producten in mijn db en er zijn 60 kleuren, dan bestaat die extra tabel uit 10.000 * 60 = 600.000 records. Is dat geen probleem? En als ik weer kleuren toe wil voegen levert dat geen problemen o?
Offline Simax - 08/12/2006 12:51 (laatste wijziging 08/12/2006 13:26)
Avatar van Simax Onbekend Het probleem is duidelijk.
Ik heb het volgende in gedachten..

  1. <?php
  2. Mysql_connect('localhost', 'gebruikersnaam', 'wachtwoord');
  3. Mysql_select_db('database');
  4.  
  5. $res = mysql_query('Select id, product_id, kleur_id From tabelnaam');
  6. while($arr=Mysql_fetch_assoc($res))
  7. {
  8. ?>
  9. <form>
  10. <select>
  11. <?php
  12. echo "<option>".$arr['kleur_id']."</option>";
  13. ?>
  14. <select>
  15. </form>
  16.  
  17. <?php
  18. }
  19. ?>


Ik neem aan dat het overige van het overige van je overzicht geen probleem word.
Er zijn ook andere oplossingen mogelijk.

MvG, RvB
Offline pj_muller00 - 08/12/2006 13:37 (laatste wijziging 08/12/2006 13:39)
Avatar van pj_muller00 PHP interesse Dat laatste is wel via mijn manier natuurlijk van die extra tabel.

en het is trouwens nog fout uitgevoerd ook 
P1n0 ... gebruik dus niet wat Rvb gepost heeft.

Citaat:
maar stel er staan 10.000 producten in mijn db en er zijn 60 kleuren, dan bestaat die extra tabel uit 10.000 * 60 = 600.000 records


Ik veronderstel dat elk product niet in de 60 kleuren kan geleverd worden. (anders hoef je ook niet voor elke kleur een veld te maken hé)
Indien elk product niet genoodzaakt elke kleur kan hebben is mijn oplossing van een link tussen kleur en product het beste.

Citaat:
En als ik weer kleuren toe wil voegen levert dat geen problemen o?


Totaal geen probleem. Gaat perfect.

Ik zal dan ff scriptje schrijven hoe de 'select' ten werk zou gaan

  1. <?php
  2. //Mysql connect
  3.  
  4. $query = "SELECT kleur FROM products_color,colors WHERE product_id = ".$_GET['id']." AND code = color_id";
  5.  
  6. echo "product specifications blabla
  7. <form method='post'>
  8. <select name='...'>\n";
  9. $result = mysql_query($query);
  10. while($row = mysql_fetch_array($result)){
  11. echo "<option>".$row['kleur']."</option>\n";
  12. }
  13. echo "</select>
  14. </form>\n";
  15. ?>


Pj  
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.176s