Panier en quantité négative

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Panier en quantité négative

par Dipsy » 02 mai 2008, 09:14

Merci, j'ai trouvé la solution.
if ($list_caddie[3] > 0)
	{
	$ajout = $list_caddie[3] - 1 ; 	
	}	

if ($list_caddie[3] == 1)
	{
	$ajout = 1 ; 
	}
A+

[Note : ce message a été posté de manière anonyme avant d'être réattribué à son auteur]

par Ryle » 30 avr. 2008, 18:17

Il te suffit dans ce cas de rajouter un simple test là où tu en as besoin pour que la quantité reste à 0 si jamais elle passe en négatif :
if ($ta_quantité < 0) {
  $ta_quantité = 0;
}

par Dipsy » 30 avr. 2008, 18:14

Merci Ryle,

J'ai bien effectué cette modif, mais ça ne résoud pas le pb.
Je peux toujours affecter des quantités négatives.
En fait, je souhaiterai le bloquer à 0 et pas -1, -2, …

Merci de ton aide.

Je travaille en local mais une boutique de même type existe à cette adresse
si ça peut aider !

http://synchropessac.free.fr/boutique/

par Ryle » 30 avr. 2008, 18:05

Je n'ai pas regardé en détail, mais l'opérateur de comparaison est == et non = qui sert à l'affectation
if ($list_caddie = 0) 

Panier en quantité négative

par Dipsy » 30 avr. 2008, 17:58

Bonjour.

Je suis confronté à un pb que je n'arrive pas à résoudre.
J'ai récupéré un script de vente en ligne (1two ecommerce modifié) mais celui-ci comporte un bug.
En fait, lorsque l'on modifie la quantité d'un produit avec des boutons + et - ,
il est possible d'entrer des quantités négatives.
Je souhaiterai les rendre nulle ou mieux supprimer ce produit du panier.
Si quelqu'un a une soluce.
Merci.

la portion en question
		//recalcul ****************************
if ($action=="ote")
		{	
$query="SELECT * FROM 1two_ecommerce_caddie WHERE client_ip='" . $_SESSION["client_ip"] . "' and compteur='$item' and heure_ins='" . $_GET["heure"] . "'";
$res_ajout = @mysql_query($query,$db);
$list_caddie=@mysql_fetch_row($res_ajout);
{
$ajout = $list_caddie[3] - 1 ; 
}

$query="UPDATE 1two_ecommerce_caddie SET quantite= '$ajout' WHERE client_ip='" . $_SESSION["client_ip"] . "' and compteur='$item' and heure_ins='" . $_GET["heure"] . "'";
$modif_ajout = mysql_query($query) or die('Erreur SQL !<br>'.$query.'<br>'.mysql_error()); 
				
				}	
Le code que j'ai essayé mais qui ne fonctionne pas :
if ($action=="ote")
		{	
$query="SELECT * FROM 1two_ecommerce_caddie WHERE client_ip='" . $_SESSION["client_ip"] . "' and compteur='$item' and heure_ins='" . $_GET["heure"] . "'";
$res_ajout = @mysql_query($query,$db);
$list_caddie=@mysql_fetch_row($res_ajout);

if ($list_caddie > 0)
	{
	$ajout = $list_caddie[3] - 1 ; 
	}

if ($list_caddie = 0)
	{
	$ajout = $list_caddie[3] ; 
	}		


$query="UPDATE 1two_ecommerce_caddie SET quantite= '$ajout' WHERE client_ip='" . $_SESSION["client_ip"] . "' and compteur='$item' and heure_ins='" . $_GET["heure"] . "'";
$modif_ajout = mysql_query($query) or die('Erreur SQL !<br>'.$query.'<br>'.mysql_error()); 
			
	}