Requete

vandouzen007
Messages postés
48
Date d'inscription
lundi 21 octobre 2013
Statut
Membre
Dernière intervention
29 mars 2014
- 17 févr. 2014 à 13:50
jordane45
Messages postés
36030
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
7 août 2022
- 17 févr. 2014 à 14:45
Bonjour, voila j'ai fait 2 tables différentes. acquis(id_acquis, id_user, valeur_Fev) et solde(id_solde,id_acquis, solde).
Mon problème c'est que j'arrive pas à modifier la valeur valeur_Fev avec la condition solde <=2. j'explique: on sélectionne tous les soldes dans la table solde et on test si c'est inférieur à 2 chacune par exemple, et si c'est vraie alors on fait l'update dans la table acquis par valeur_Fev = 8. Plus précisément, valeur_Fev sont 0 par défaut et on ajoute 8 pour chaque id_user et verifie si son solde est inférieur à 2. Sinon, on ajoute rien, et ça valeur reste la valeur 0 ou la valeur par defaut 0.

Voici la requete que j'ai fait:


$reA = "SELECT * 
	FROM solde
	INNER JOIN acquis
	ON solde.id_acquis = acquis.id_acquis
	WHERE annee_acquis='".$date."'";
	$exA = mysql_query($reA) or die (mysql_error());
	while($afA = mysql_fetch_object($exA))
	{
	//var_dump($afA);
	
			// Modification affichage ACQUIS
			$req1="UPDATE acquis
				 SET valeur_FEV = 8
				WHERE id_acquis IN (SELECT id_acquis FROM solde WHERE solde_general <= 2 ) AND annee_acquis='".$date."'";
				$exec1=mysql_query($req1) or die(mysql_error());
			//Modification solde
				$req13="UPDATE solde SET solde_general =(solde_general + 100) WHERE solde_general <= 2";
				mysql_query($req13);
				redirect("gererdemandeacquis.php");

	}


Quelqu'un pourra m'aider à résoudre cet problème

Cordialement,

2 réponses

jordane45
Messages postés
36030
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
7 août 2022
358
17 févr. 2014 à 13:56
Bonjour,
Dans ta requête tu parles de : solde_general
Hors.. dans les tables que tu nous montres..

2 tables différentes:
acquis(id_acquis, id_user, valeur_Fev) et solde(id_solde,id_acquis, solde).
....ce champ n'existe pas..


Lorsque tu as des soucis avec l'execution de requêtes.. la première chose à faire c'est de les tester en direct dans ta BDD...


0
vandouzen007
Messages postés
48
Date d'inscription
lundi 21 octobre 2013
Statut
Membre
Dernière intervention
29 mars 2014
1
17 févr. 2014 à 13:59
solde = solde_general : j'ai changé car c'est trop long
0
jordane45
Messages postés
36030
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
7 août 2022
358
17 févr. 2014 à 14:31
Et annee_acquis ??
0
jordane45
Messages postés
36030
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
7 août 2022
358
17 févr. 2014 à 14:45
Ta requête fonctionne parfaitement... sans ta condition sur ta Date..
Donc.. soit ton champ date n'existe pas.. soit la variable que tu lui passe n'est pas bonne...

NB: tu peux tester tes requêtes directement dans ta base.
Soit en passant par PhpMyadmin par exemple soit en utilisant un logiciel comme HeidiSQL
0