Remplir une table sous conditions
MARTEGAL Messages postés 34 Date d'inscription Statut Membre Dernière intervention -
Bonjour à toutes et à tous,
Je suis en train d'écrire un script qui doit, à partir d'un formulaire extérieur, remplir une table si les éléments fournis correspondent à partir de la fonction IF...ELSE
Malheureusement, la table "adherents2022" qui doit recevoir le pw donné dans le formulaire, n'est jamais rempli. Je n'arrive pas à saisir les variables de mon ARRAY permettant le choix IF, c'est toujours le ELSE qui rejette.
Merci d'avance de m'éclairer.
//On insère les données : nom, prenom et pw dans la table mots_de_passe $sth=$conn->prepare(" INSERT INTO mots_de_passe (Nom, Prenom, pw) VALUES(:Nom, :Prenom, :pw)"); $sth->bindparam(':Nom',$Nom); $sth->bindparam(':Prenom' ,$Prenom); $sth->bindparam(':pw', $PW); $sth->execute(); echo "saisie réussie dans la table Mots_de_passe"; //on scrute la table adherents2022 $sth=$conn->prepare ("SELECT Nom, Prenom FROM adherents2022"); $sth->execute(); $resultat=$sth->fetchALL(PDO::FETCH_ASSOC); echo'<pre>'; print_r($resultat); echo'<pre>'; $taille_adherents2022=count($resultat); echo $taille_adherents2022; for ($i=0; $i<$taille_adherents2022; $i++){ $p = $resultat[$i]; echo'<pre>'; print_r($p); echo'<pre>'; if(echo($p==$Nom) AND echo($p==$PRENOM)){ $sth=$conn->prepare(" INSERT INTO adherents2022 (pw) VALUES(:pw)"); $sth->bindparam(':pw', $PW); $sth->execute(); } else{echo '<br> PW non copié dans table adherent2022';} }
Windows / Edge 104.0.1293.70
- Remplir une table sous conditions
- Table ascii - Guide
- Table des matières word - Guide
- Organigramme a remplir word - Guide
- Table des figures google doc ✓ - Forum Word
- Table des caractères - Guide
5 réponses
bonjour, je commencerais par supprimer les "echo" de la ligne 31.
OK, tu as raison yg_be. Mais j'ai mis cet echo afin de m'assurer que les variables arrivent bien jusqu'à cette ligne de script. Cet echo ne change rien à mon pb
Bonjour,
En complément de la très juste remarque d'Yg_be ...
Sais tu utiliser un WHERE dans une requête SQL ?
Connais tu l'instruction foreach ?
Que viennent faire des echo dans un IF ?
Et comment .. une même variable ($p) peut-elle être égale à la fois au nom et au prénom ?
D'ailleurs .. $p .. est un ARRAY contenant plusieurs informations ( résultat d'une ligne de ta requête SQL )
Ce qui amène une nouvelle question .. sais tu utiliser des ARRAY associatifs ?
Dernière question .. pourquoi insérer des données dans la table mots_de_passe .. pour ensuite aller voir si le nom et prénom de l'utilisateur existe dans la table adhérent pour y copier le password ? Pourquoi ne pas directement updater ( tiens.. encore une instruction sql que tu ne connais peut-être pas... ) l'adhérent concerné ?
Tu sembles ne pas avoir acquis le minimum requis de connaissances avant de te lancer. Essaye de suivre quelques tutos/formations sinon tu ne vas pas t'en sortir...
Merci Jordane pour tes remarques. Je suis effectivement un "bleu", et j'apprends petit à petit avec les bouquins de Pierre GIRAUD. Voici le schéma général de mon script :
- Dans une Bdd, une première table doit contenir : NOM PRENOM et PW d'un adhérent qui s'inscrit. La seconde table contient tous les renseignements de l'adhérent hormis le PW
- Le jeu consiste à copier le PW de la 1ère table dans la seconde de façon à ce que l'adhérent puisse se connecter avec ses NOMS, PRENOMS et PW et avoir accès à la seconde table.
Je reconnais que c'est tordu, mais c'est un exercice que j'essaie de réussir.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question