PHP ver gevorderde |
|
Om te kunnen sorteren heb je bepaalde producten nodig, ik zet deze allemaal in die query om dat te checken of dit er is. Alleen moet je alleen productid 23 3 keer hebben door de code in de if, daar heeft die query niks met te maken. Dus door productid 23 3 keer te kopen kan je door ipv al die producten (24, 25, etc) te kopen. Wat is er mis? Dit is de code en de tabel user_producten bestaat uit userid, productid en aantal.
En als je het nog niet snapt:
Om een lang verhaal kort te maken, alles van de productid's in de WHERE moet men hebben (23, 24, 25, etc), daarom haal ik ze op en check ik dan met tellen of ze die allemaal hebben. En dmv mysql_num_rows check ik of ze bestaan.
<?php
$query2 = "SELECT `productid`, `aantal` FROM `user_producten` WHERE `userid`='".$_COOKIE['id']."' && (`productid`='23' || `productid`='24' || `productid`='25' || `productid`='26' || `productid`='27' || `productid`='29' || `productid`='34' || `productid`='35' || `productid`='36' || `productid`='37' || `productid`='38' || `productid`='39' || `productid`='40' || `productid`='73' || `productid`='80' || `productid`='81' || (`productid`='1' || `productid`='2' || `productid`='3' || `productid`='4' || `productid`='5' || `productid`='6' || `productid`='7' || `productid`='8') || (`productid`='78' || `productid`='79'))";
$result2 = mysql_query($query2) or die(mysql_error());
$fetch2 = mysql_fetch_array($result2);
$num_rows2 = mysql_num_rows($result2);
//Als je niet alle producten hebt of je hebt prodctid 23 niet 3 keer
if($num_rows2 == 0 || ($fetch2['productid'] == 23 && $fetch2['aantal'] !='3'))
{
echo "Je hebt niet alle producten.";
}
//Anders mag er gesorteerd worden
else
{
//Uitvoeren
}
?>
<?php $query2 = "SELECT `productid`, `aantal` FROM `user_producten` WHERE `userid`='".$_COOKIE['id']."' && (`productid`='23' || `productid`='24' || `productid`='25' || `productid`='26' || `productid`='27' || `productid`='29' || `productid`='34' || `productid`='35' || `productid`='36' || `productid`='37' || `productid`='38' || `productid`='39' || `productid`='40' || `productid`='73' || `productid`='80' || `productid`='81' || (`productid`='1' || `productid`='2' || `productid`='3' || `productid`='4' || `productid`='5' || `productid`='6' || `productid`='7' || `productid`='8') || (`productid`='78' || `productid`='79'))"; //Als je niet alle producten hebt of je hebt prodctid 23 niet 3 keer if($num_rows2 == 0 || ($fetch2['productid'] == 23 && $fetch2['aantal'] !='3')) { echo "Je hebt niet alle producten."; } //Anders mag er gesorteerd worden else { //Uitvoeren } ?>
Wat is er mis?
|