login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Alle tabellen weergeven

Offline GroundZero - 24/10/2011 15:27 (laatste wijziging 24/10/2011 15:38)
Avatar van GroundZeroLid Beste,

ik heb het volgende script:

  1. function displayProduct($id, $naam) {
  2. $query = mysql_query('SELECT * FROM shop_producten
  3. WHERE
  4. id = "'.mysql_real_escape_string($id).'"
  5. AND
  6. seo_titel = "'.mysql_real_escape_string($naam).'"') or die(mysql_error());
  7. $fetch = mysql_fetch_assoc($query);
  8.  
  9. $array[] = $fetch['titel'];
  10. $array[] = $fetch['seo_titel'];
  11. $array[] = $fetch['omschrijving'];
  12. $array[] = $fetch['oude_prijs'];
  13. $array[] = $fetch['nieuwe_prijs'];
  14. $array[] = $fetch['gewicht'];
  15. $array[] = $fetch['voorraad'];
  16. $array[] = $fetch['foto'];
  17. $array[] = $fetch['toegevoegd'];
  18.  
  19. return $array;
  20. }


Je ziet dus dat ik alle informatie in één array wil hebben, echter heb ik de mogelijkheid om opties toe te voegen bijvoorbeeld 3 kleuren. Dan komt er bij:

$array[] = $fetch['kleur1'];
$array[] = $fetch['kleur2'];
$array[] = $fetch['kleur3'];

Echter is bovenstaande (1e code) standaard wat er altijd is. De rest is optioneel, iemand kan dus 3 velden toevoegen voor kleuren, hij kan 5 voor maten toevoegen of 100 voor merken. Het is helemaal aan de persoon welke het beheerd.

Hoe kan ik het nu zo maken dat ik met bovenstaande query ALLES ongeacht hoeveel het er ook zijn, in een array krijg?

Kan wel een foreach lus maken maar die geeft niet de namen van de tabellen weer maar enkel de inhoud, en ik heb echt de namen dus nodig ;)

3 antwoorden

Gesponsorde links
Offline Ontani - 24/10/2011 15:42
Avatar van Ontani Gouden medailleGouden medailleGouden medailleGouden medaille

-1
door meerdere tabellen te gebruiken...

je hebt een tabel shop_producten die maakt gebruik van een id.

nu maak je een tabel aan met naam : shop_product_kleuren.

in die tabel heb je 2 kolommen: shop_product_id en kleur

en je maakt een tabel aan met naam: shop_product_merken.

opnieuw 2 kolommen: shop_product_id en merk.

Nu kan je oneindig veel rijen toevoegen aan shop_product_kleuren of shop_product_merken voor 1 shop_product.id

bijvoorbeeld id 1 in shop_producten heeft 4 kleuren en 10 merken.

dan heb je 4 rijen in shop_product_kleuren:

  1. shop_product_id kleur
  2. 1 bruin
  3. 1 grijs
  4. 1 geel
  5. 1 rood


en 10 rijen in shop_product_merken:

  1. shop_product_id merk
  2. 1 mercedes
  3. 1 bmw
  4. 1 kia
  5. 1 fiat
  6. 1 opel
  7. 1 renault
  8. 1 peugeot
  9. 1 rover
  10. 1 bentley
  11. 1 lotus


dus kan je gewoon met je id uit shop_producten al je kleuren en merken ophalen uit de juiste tabellen
Offline GroundZero - 24/10/2011 17:34
Avatar van GroundZero Lid is er geen andere manier?...
dus ik heb standaard altijd (in mijn tabel shop_producten) de rijen:

- titel
- prijs
- voorraad

nu kan ik via de admin zeggen "kleur" van 3 velden. Als ik dit doe worden er via mysql "ADD" 3 rijen toegevoegd met de namen

- kleur1
- kleur2
- kleur3

Dus bestaat deze table uit 6 rijen nu welke ik in mijn array wilt.

Ik zal jouw methode eens proberen, dankjewel voor je antwoord! als iemand anders nog een methode wilt dan hoor ik deze graag 
Offline Ontani - 24/10/2011 23:39
Avatar van Ontani Gouden medailleGouden medailleGouden medailleGouden medaille

-1
OMG columnen dynamisch toevoegen is zowat het slechtste wat ik ooit op dit forum gelezen heb. Wat als je admin zo maar even 50 merk kolommen toevoegd en je hebt 20.000 producten in je tabel staan: wilt dit zeggen dat er voor deze ene uitzondering 20.000 x 50 = 1 miljoen lege velden worden aangemaakt waar er maar 50 van worden gebruikt...

Slechtste database ontwerp ooit!
Gesponsorde links
Je moet ingelogd zijn om een reactie te kunnen posten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.189s