Agl 4 Posté(e) le 12 mars 2022 Partager Posté(e) le 12 mars 2022 Bonjour, voici mon soucis, je souhaite que l'utilisateur puisse modifier son Discord, Soucis, quand il le rentre ca modifie ceux de tous les monde. Qui peux m'aider? <?php if (isset($_REQUEST['discord'])){ // récupérer le nom d'utilisateur et supprimer les antislashes ajoutés par le formulaire $discord = stripslashes($_REQUEST['discord']); $discord = mysqli_real_escape_string($conn, $discord); //requéte SQL + mot de passe crypté $query = "UPDATE users SET discord=('$discord')"; // Exécute la requête sur la base de données $res = mysqli_query($conn, $query); if($res){ echo "<div class='sucess'> <h3>Votre discord est ajouté ! .</h3> <p>Cliquez ici pour <a href='profil'>Revenir en arrière</a></p> </div>"; } }else{ ?> <form class="box" action="" method="post"> <input type="text" class="box-input" name="discord" placeholder="Nom Discord" required /> <input type="submit" name="submit" value="Accepter" class="box-button" /> </form> <?php } ?> Lien à poster Partager sur d’autres sites Plus d'options de partage...
Modérateur Henri 80 Posté(e) le 13 mars 2022 Modérateur Partager Posté(e) le 13 mars 2022 Alors ça fait trèèès longtemps que je n'ai plus fait de PHP mais voici quelques soucis que j'ai remarqués : Pour récupérer la variable entrée, tu utilises $_REQUEST["discord"] alors que tu devrais utiliser $_POST["discord"]. Ta requête SQL change en effet la case "discord" de chaque utilisateur puisque tu ne spécifies pas quel ligne il faut modifier (spécifique à l'utilisateur). Tu pourrais avoir une requête du style : UPDATE users SET discord=('$discord') WHERE username = 'Jean-Marc' Faut-il encore que tu connaisses l'identité de l'utilisateur qui soumet le formulaire. ~ Henri Développeur WEB, NodeJS et C Discord: Henri#003 Twitter: @UnrealHenri 1 Lien à poster Partager sur d’autres sites Plus d'options de partage...
Agl 4 Posté(e) le 13 mars 2022 Auteur Partager Posté(e) le 13 mars 2022 (modifié) Je vais essayé mais du coup ça donne UPDATE users SET discord=('$discord') WHERE username = ($username) car dans ton exemple ce ne serait que jean marc qui pourrait changer son discord j’imagine ! moi je souhaite que l’utilisateur connecté change son discord à lui Il y a 7 heures, CptHenri a dit : Alors ça fait trèèès longtemps que je n'ai plus fait de PHP mais voici quelques soucis que j'ai remarqués : Pour récupérer la variable entrée, tu utilises $_REQUEST["discord"] alors que tu devrais utiliser $_POST["discord"]. Ta requête SQL change en effet la case "discord" de chaque utilisateur puisque tu ne spécifies pas quel ligne il faut modifier (spécifique à l'utilisateur). Tu pourrais avoir une requête du style : UPDATE users SET discord=('$discord') WHERE username = 'Jean-Marc' Faut-il encore que tu connaisses l'identité de l'utilisateur qui soumet le formulaire. Modifié le 13 mars 2022 par Agl Lien à poster Partager sur d’autres sites Plus d'options de partage...
Modérateur Henri 80 Posté(e) le 14 mars 2022 Modérateur Partager Posté(e) le 14 mars 2022 Oui bien sûr, tu dois adapter la requête pour insérer le nom d'utilisateur du mec ~ Henri Développeur WEB, NodeJS et C Discord: Henri#003 Twitter: @UnrealHenri Lien à poster Partager sur d’autres sites Plus d'options de partage...
Agl 4 Posté(e) le 14 mars 2022 Auteur Partager Posté(e) le 14 mars 2022 Il y a 9 heures, Kurumi Tokisaki a dit : Salut, Merci de nous donner plus d'information: Comment est gérer ta session et la récupération de l'user. Tel que username, id etc Attention moi je ne ferais pas un WHERE du username Je préfère utilisée l'id utilisateur , car si plusieurs personne aurais le même pseudo, cela va update le même discord sur tous les utilisateurs avec le même pseudo Enfin un exemple serais quelque chose comme ceci: D'ailleurs il manque beaucoup de vérification ^^ sur le script attention A toi après de modifier avec tes codes , c'est qu'un exemple j'connaît pas les variables de ta SESSION sur ton site. Cela ne marchera pas si tu fais un copier coller , n'oublie pas de modifier avec tes propres variables. <?php if (isset($_POST['discord'])) { /* * Récupère l'id de l'utilisateurs connectée * L'id utilisateurs stock dans une session * [$_SESSION] -> ID */ $userid = intval($_SESSION['id']); /* * Récupère le discord formulaire * Escape des caractères spécial * [$_POST] -> discord */ $newdiscord = stripslashes($_POST['discord']); $discord = $conn->real_escape_string($newdiscord); /* * UPDATE du discord de la personne connectée. * On récupère l'user id ci-dessus de la SESSION actuellement connectée * userid = ID -> [$_SESSION] -> ID * Update SQL du (discord) de la personne connectée sur le site. */ $sql = "UPDATE users SET discord = ('$discord') WHERE id = ('$userid')"; // exemple if(!$conn->query($sql)) { echo "<div class='sucess'> <h3>Votre discord est ajouté ! .</h3> <p>Cliquez ici pour <a href='profil'>Revenir en arrière</a></p> </div>"; } /* * Terminée la requête * Closed connection mysqli */ $conn->close(); } else { ?> <form class="box" action="" method="post"> <input type="text" class="box-input" name="discord" placeholder="Nom Discord" required /> <input type="submit" name="discord" value="Accepter" class="box-button" /> </form> <?php } ?> Pour finir renseigne sur PDO Pour avoir accès à ce lien, merci de vous connecter. Sa te serais beaucoup plus facile et sécurisé pour toi. <?php if (isset($_POST['discord'])) { /* * Récupère l'id de l'utilisateurs connectée * L'id utilisateurs stock dans une session * [$_SESSION] -> ID */ $userid = intval($_SESSION['id']); /* * Récupère le discord formulaire * Escape des caractères spécial * [$_POST] -> discord */ $newdiscord = stripslashes($_POST['discord']); $discord = $conn->real_escape_string($newdiscord); /* * UPDATE du discord de la personne connectée. * On récupère l'user id ci-dessus de la SESSION actuellement connectée * userid = ID -> [$_SESSION] -> ID * Update SQL du (discord) de la personne connectée sur le site. */ $sql = "UPDATE users SET discord = ('$discord') WHERE id = ('$userid')"; // exemple if(!$conn->query($sql)) { echo "<div class='sucess'> <h3>Votre discord est ajouté ! .</h3> <p>Cliquez ici pour <a href='profil'>Revenir en arrière</a></p> </div>"; } /* * Terminée la requête * Closed connection mysqli */ $conn->close(); } else { ?> <form class="box" action="" method="post"> <input type="text" class="box-input" name="discord" placeholder="Nom Discord" required /> <input type="submit" name="discord" value="Accepter" class="box-button" /> </form> <?php } ?> Super ça a fonctionné et effectivement je comprends ce que tu veux dire je prend en note ton exemple ! par contre la ca affiche pas le écho « votre discord a été ajouté » Lien à poster Partager sur d’autres sites Plus d'options de partage...
Agl 4 Posté(e) le 15 mars 2022 Auteur Partager Posté(e) le 15 mars 2022 Je peux t’ajouter sur discord ? Lien à poster Partager sur d’autres sites Plus d'options de partage...
Modérateur Henri 80 Posté(e) le 21 mai 2022 Modérateur Partager Posté(e) le 21 mai 2022 Résolu ? ~ Henri Développeur WEB, NodeJS et C Discord: Henri#003 Twitter: @UnrealHenri Lien à poster Partager sur d’autres sites Plus d'options de partage...
Messages recommandés