Ik ben een webshop aan het bouwen. (De basis heb ik van phphulp.nl gebruikt (http://www.phphulp.nl/php/script/overig/winkelwagen-update-van-de-tutorial/1750/winkelwagenupdatevandetutorial/1263/) heel goed script om mee te beginnen overigens)
Nu heb ik dus een klein stukje script geschreven waarvan ik wil dat als er een aantal producten geselecteerd en afgerekend worden dat hij de voorraad in de database update.
Dit is gelukt met dit script, maar hij update de voorraad maar van 1 product ook al heb je er 2, 3 of meer in je winkelwagen staan.
Omdat ik niet wist hoe ik dat op moest lossen had ik nagedacht over een andere manier maar die was niet praktisch. Bijvoorbeeld het script niet aan op de afrekenpagina te zetten maar het script al uit te voeren bij het toevoegen van een product en vervolgens na een half uur/uur de voorraad terugzetten. Maar als er dan een gebruiker leuk elk half uur 100 producten toevoegd is continue je voorraad leeg. En gebruikers zouden niet langer als een half uur kunnen winkelen omdat dan de ge-adde producten weer teruggeplaatst worden.
Ik wil in ieder geval dus graag dat er meerdere tegelijkertijd geupdate kunnen worden. Ik weet alleen niet welke stappen ik daarvoor zou moeten zetten. Misschien dat jullie daar ideeen over hebben of inzichten die me verder kunnen helpen.
Ik hoef liever geen kant en klaar script want ik wil het nog steeds het liefst zelf uitvinden en er van leren. Dus tips (of opmerkingen) de goeie richting uit ben ik al mee gebaat.
Hier is de code:
$bestel_id = mysql_insert_id();
//selecteert de regels waarin bestel_id gelijk is aan $bestel_id en geeft vervolgens een record weer met het de voorraad van het product dat net besteld is
$query = "SELECT voorraad, bestel_id, $bestel_id FROM producten, bestelregel WHERE '$bestel_id' LIKE bestel_id";
$resultQ = mysql_query($query);
$row = mysql_fetch_row($resultQ);
$resultQ = $row[0];
// $product[1] is het bestelde aantal producten
//$product[0] is het product id
//nieuwe voorraad
$n_voorraad = $resultQ - $product[1];
//update de nieuwe voorraad in de database
$query1 = "UPDATE producten SET voorraad = '$n_voorraad' WHERE id = '$product[0]'";
$resultR = mysql_query($query1);
//aanvullende informatie: Per product dat er wordt toegevoegd word er een nieuw record aangemaakt met hetzelfde bestel_id maar met een nieuw uniek id.
Alvast bedankt :):)