Aide - condition if/else - sql

CapsnDribz -  
 CapsnDribz -
Bonjour à tous !

Voilà, je désire affecter la Qty en la réduisant de -1 si on clique sur [Reduce], mais je souhaiterais également faire la vérification via SQL pour l'action à exécuter si la valeur devient 0 -> supprimer la ligne complète dans panieritem.


	if(isset($_GET['action']) && $_GET['action'] == "Reduce")
	{
	
		$item = $_GET['IdProduct'];
		$bd = basedonne();	// connexion db	
		$sql ="
			SELECT Qty 
			FROM panieritem
			IF Qty = 0
				DELETE FROM panieritem
				WHERE Qty = 0
			ELSE				
				SET Qty = Qty - 1
				WHERE IdItem =" . $item;
			
		$reponse = $bd->query($sql);
		
	}


J'ai fait quelque recherche sur le sujet, testé des modèles de requêtes SQL plausible de fonctionner, mais je demeure bloquer et sans réponse !

Merci à l'avance !

1 réponse

  1. JooS Messages postés 2705 Statut Membre 228
     
    Salut,
    if(isset($_GET['action']) && $_GET['action'] == "Reduce")
    {
        $item = $_GET['IdProduct'];
        $bd = basedonne(); // connexion db 
        $sql = "
            UPDATE panieritem SET Qty = Qty-1 WHERE IdItem  = :item; 
            DELETE FROM panieritem WHERE IdItem = :item AND Qty = 0";
    
        $reponse = $bd->prepare($sql);
        $reponse->bindParam(':item', $item, PDO::PARAM_INT);
        $reponse->execute();
    }


    Mettez en résolu quand c'est résolu -.- ...
    1
    1. CapsnDribz
       
      Merci pour la réponse ! Oui effectivement je me suis cassé la tête pour rien. Quelques minutes après le post j'ai également fait ça en 2 étapes.
      0