Alors, il me semble qu'il est possible de faire l'intégralité de ton code en une seule requête SQL Et d'un point de vue clarté et perfomance, ce sera mieux (selon moi)
Je reprends ton code
1
2
3
4
5
6
7
8
$bdd = $bdd2->prepare('UPDATE membres SET grade = :grade, statue = :statue, NavMAJ = :NavMAJ, TerMAJ = :TerMAJ WHERE nom = :nom');$bdd->execute([ ':grade' => $_POST['grade'], ':statue' => $_POST['statue'], ':NavMAJ' => $_POST['navmaj'], ':TerMAJ' => $_POST['termaj'], ':nom' => $_POST['nom']]);
Tu mets à jour ta base de données avec les données brutes de ton formulaire.
1
2
3
4
5
6
7
8
$nom = $_POST['nom']; $reponse = $bdd2->prepare('SELECT * FROM membres WHERE nom = :nom');$reponse->execute(array('nom' => $nom));while ($donnees = $reponse->fetch()){ $Navsomme = $donnees['Nav'] + $donnees['NavMAJ']; $Tersomme = $donnees['Ter'] + $donnees['TerMAJ']; $totalnt = $Tersomme + $Navsomme;}
Tu récupères les données que tu viens de modifier.
Pourquoi les récupérer? Tu les connais déjà, tu viens de les mettre à jour à partir des données de $_POST.
1
2
3
4
5
6
7
8
$bdd = $bdd2->prepare('UPDATE membres SET unites = :unites, Nav = :Nav, Ter = :Ter, NavMAJ = 0, TerMAJ = 0 WHERE nom = :nom');$bdd->execute([ ':unites' => $totalnt, ':Nav' => $Navsomme, ':Ter' => $Tersomme, ':nom' => $_POST['nom']]); $reponse->closeCursor();
Connectez-vous pour pouvoir poster un message.
Connexion
Pas encore membre ?
Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte