Hallo, ik ben nieuw in de wereld die PHP heet, maar ondanks dat heb ik een site gemaakt met vele toeters en bellen geproduceerd door bloed, zweet en tranen. Ik heb em bijna klaar, maar zit nog met 1 probleem.

Scenario: Ik heb een website gemaakt die lingerie aanbiedt. Ik heb de database o.a als volgt gebouwd.
tabel: Product. (omschrijvingen, prijzen)
tabel: Item. (maten, kleuren)
tabel: cart (uniek id, item id, product_nr, aantal)

Nu loop ik tegen het volgende probleem aan.
Het is de bedoeling dat bij het afrekenen van 2 items van hetzelfde product ( een BH + string) de setprijs 1 x gerekend wordt, in plaats van 1 x stringprijs + 1 x BH prijs. Laatstgenoemde voorbeeld werkt uitstekend, maar helaas moet dit niet. Ook moet het werken dat als er bijv. 2 strings en 1 BH van hetzelfde product besteld worden, 1 x de setprijs en 1 x de stringprijs worden doorgerekend. Ik heb nu de 'nota' in een Do / while loop zitten, maar het wordt me echt te complex om zo even te doen. Misschien is het mogelijk die array van items voor het plaatsten gerangschikt en berekend worden, voordat deze op het scherm geplaatst wordt? Ik kom er niet uit en alle input zou geweldig zijn
Is het een willekeurige string + bh bij elkaar? OF zijn het echt setjes die bij elkaar passen zegmaar.

ja, de bh en string hebben hetzelfde product id, losse bh's em strings (verschillende product_id's)moeten niet als set gerekend worden.
Volgens mij is je database opzet al fout... nu heb je dingen er dus dubbel instaan.

Is het niet handiger om een lijst te maken met producten, dus bh's en string's los. En dan setjes, bestaande uit 1 bh-id en 1 string-id.

<?php
if($id_bh==$id_string){
$prijs=mysql_result($result,0,'setprijs');
}else{
//samen optellen
}
?>

zoiets?
Maar wat Arjan al zij is het volgens mij niet zo handig dat je die tabel item en product gescheiden hebt en twee tabellen. Ik denk dat het handiger is om die twee in een tabel met wat meer kolommen te zetten.
Je kunt als je dit met de hand te veel werk vind, dit evt even met een scriptje doen
kijk die arjan, gaat het over strings en bhs komt hij los :)


--

maar idd je database opbouw goed maken en dit is heel makkelijk te realiseren, voeg een veld toe aan welke set het toebehoord oid
Wellicht OS commerce daarvan is de tabellen bekijken.
Dit is een webwinkel en zij hebben het prima voor elkaar.

Nu dan toch van de gelegenheid gebruik maken is er naast OS commerce nog een andere kant en klare webwinkel aan te bevelen?
De webwinkel die ik voor schuitema gemaakt heb word binnenkort 'opensource' en zal ik hier neerzetten.

Zoek alleen nog iemand die er dan eventjes één keer doorheen wilt lopen om te kijken of alles klopt. Er zit aardig wat uur in, en het is een mooie applicatie maar toch :).

Gijs, dat noemen ze normaliseren... je hebt items, en setjes als een kopeltabel. Door één enorme tabel te maken word het er niet beter op.
Bedankt voor de input :D ... het probleem is namelijk dat ik eigenlijk de hele site al compleet heb gebouwd, en het functioneert ook allemaal naar behoren, behalve dan het berekenen van setjes. Dit komt natuurlijk ook doordat ik het in een do/while lus heb staan, zodat bh's en strings afzonderlijk van elkaar worden behandeld. Het verschil van string en bh heb ik in de cart tabel staan door ze een item_id te geven ( 1 = bh, 2 = string). Ik zoek dus eigenlijk een oplossing voor het uitlezen en bekijken wat setjes zijn en wat niet, voordat het opgeteld wordt. Zoals ik al zei, die do/while lus behandelt alle records afzonderlijk.
@ Arjan : OK dan wacht ik daar is op want ik heb geen haast zoals dit zo mooi heet :-)

Reageren