Problème d'update php/mysqli
Résolu/Fermé
Tzmagnum
Messages postés
129
Date d'inscription
dimanche 9 août 2009
Statut
Membre
Dernière intervention
10 mai 2022
-
30 mars 2021 à 01:26
Tzmagnum Messages postés 129 Date d'inscription dimanche 9 août 2009 Statut Membre Dernière intervention 10 mai 2022 - 4 avril 2021 à 12:28
Tzmagnum Messages postés 129 Date d'inscription dimanche 9 août 2009 Statut Membre Dernière intervention 10 mai 2022 - 4 avril 2021 à 12:28
A voir également:
- Mysqli update php
- Alert php ✓ - Forum PHP
- Windows update bloqué - Guide
- Header php - Astuces et Solutions
- Asus live update ✓ - Forum Logiciels
- Hp bios update bloqué ✓ - Forum BIOS
3 réponses
yg_be
Messages postés
21319
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
22 mars 2023
1 327
1 avril 2021 à 23:55
1 avril 2021 à 23:55
bonjour,
d'où sort
d'où sort
$_REQUEST?
jordane45
Messages postés
37264
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
22 mars 2023
4 548
3 avril 2021 à 10:44
3 avril 2021 à 10:44
Bonjour,
Un peu de lecture :
https://www.php.net/manual/fr/mysqli.error.php
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
Ce qui donnerait un truc du genre :
Un peu de lecture :
https://www.php.net/manual/fr/mysqli.error.php
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
Ce qui donnerait un truc du genre :
<?php // Démarrage des session ( à mettre AU TOUT DEBUT DES FICHIERS AVANT TOUT LE RESTE ) session_start(); //affichage des erreurs php error_reporting(E_ALL); ini_set('display_errors', TRUE); ini_set('display_startup_errors', TRUE); require('../config.php'); // Vérifiez si l'utilisateur est connecté, sinon redirigez-le vers la page de connexion if(!isset($_SESSION["username"])){ header("Location: ../login.php"); exit(); } // Récupération propre des variables AVANT de les utiliser $username = !empty($_SESSION["username"]) ? $_SESSION["username"]: NULL; $form_username = !empty($_POST['username'] ) ? $_POST['username']: NULL; $form_name= !empty($_POST['name'] ) ? $_POST['name']: NULL; $form_email = !empty($_POST['email'] ) ? $_POST['email']: NULL; $sqlpr = "SELECT * FROM `users` WHERE `username` = '".$username."'"; if(! $requetepr = mysqli_query($conn,$sqlpr)){ printf("Erreur dans la requete : %s\n", $mysqli->error); exit; } $resultpr = mysqli_fetch_array($requetepr); if($form_name && $form_username && $form_email ){ $username = mysqli_real_escape_string($conn, $username); $name = mysqli_real_escape_string($conn, $name); $email = mysqli_real_escape_string($conn, $email); $query = "UPDATE `users` SET `username`='$form_username', `name`='$form_name', `email`='$form_email' WHERE `username`='".$username."'"; if(! $res = mysqli_query($conn, $query)){ printf("Erreur dans la requete : %s\n", $mysqli->error); exit; } } <!DOCTYPE html> <html> <head> <link rel="stylesheet" href="../style.css" /> <meta charset="utf-8"> </head> <body> <?php if($form_name && $form_username && $form_email ){ if($res){ echo "<div class='sucess'> <h3>Votre profil a été modifié avec succés.</h3> <p>Cliquez <a href='home.php'>ici</a> pour retourner à la page d'accueil</p> </div>"; } }else{ ?> <form class="box" action="" method="post"> <h1 class="box-logo box-title"> <a href="http://lc-sd.be/visa/">Visa Lc-sd.be</a> </h1> <h1 class="box-title">Modification de votre profil</h1> <input type="text" class="box-input" name="username" value="<?php echo $resultpr['username']; ?>" disabled="disabled" /> <input type="text" class="box-input" name="name" value="<?php echo $resultpr['name']; ?>" /> <input type="text" class="box-input" name="email" value="<?php echo $resultpr['email']; ?>" /> <input type="submit" name="submit" value="Modifier" class="box-button" /> <p class="box-index">Cliquez <a href='home.php'>ici</a> pour retourner à la page d'accueil</p> </form> <?php } ?> </body> </html>
Tzmagnum
Messages postés
129
Date d'inscription
dimanche 9 août 2009
Statut
Membre
Dernière intervention
10 mai 2022
Modifié le 4 avril 2021 à 02:08
Modifié le 4 avril 2021 à 02:08
Bonjour,
Merci, j'ai testé.
Mais malgré tout malheureusement l'update ne se fait pas, je ne comprends pas même en lisant les 2 pages que tu m'as donné, pourquoi cela ne fonctionne pas et il n'y a aucun code erreur.
Cela ré-affiche simplement le formulaire après avoir par exemple changer le nom et avoir cliquer sur "modifier"
Merci d'avance.
Merci, j'ai testé.
Mais malgré tout malheureusement l'update ne se fait pas, je ne comprends pas même en lisant les 2 pages que tu m'as donné, pourquoi cela ne fonctionne pas et il n'y a aucun code erreur.
Cela ré-affiche simplement le formulaire après avoir par exemple changer le nom et avoir cliquer sur "modifier"
Merci d'avance.
<?php // Démarrage des session ( à mettre AU TOUT DEBUT DES FICHIERS AVANT TOUT LE RESTE ) session_start(); //affichage des erreurs php error_reporting(E_ALL); ini_set('display_errors', TRUE); ini_set('display_startup_errors', TRUE); require('../config.php'); // Vérifiez si l'utilisateur est connecté, sinon redirigez-le vers la page de connexion if(!isset($_SESSION["username"])){ header("Location: ../login.php"); exit(); } // Récupération propre des variables AVANT de les utiliser $username = !empty($_SESSION["username"]) ? $_SESSION["username"]: NULL; $form_username = !empty($_POST['username'] ) ? $_POST['username']: NULL; $form_name= !empty($_POST['name'] ) ? $_POST['name']: NULL; $form_email = !empty($_POST['email'] ) ? $_POST['email']: NULL; $sqlpr = "SELECT * FROM `users` WHERE `username` = '".$username."'"; if(! $requetepr = mysqli_query($conn,$sqlpr)){ printf("Erreur dans la requete : %s\n", $mysqli->error); exit; } $resultpr = mysqli_fetch_array($requetepr); if($form_name && $form_username && $form_email ){ $username = mysqli_real_escape_string($conn, $username); $name = mysqli_real_escape_string($conn, $name); $email = mysqli_real_escape_string($conn, $email); $query = "UPDATE `users` SET `username`='$form_username', `name`='$form_name', `email`='$form_email' WHERE `username`='".$username."'"; if(! $res = mysqli_query($conn, $query)){ printf("Erreur dans la requete : %s\n", $mysqli->error); exit; } } ?> <!DOCTYPE html> <html> <head> <link rel="stylesheet" href="../style.css" /> <meta charset="utf-8"> </head> <body> <?php if($form_name && $form_username && $form_email ){ if($res){ echo "<div class='sucess'> <h3>Votre profil a été modifié avec succés.</h3> <p>Cliquez <a href='home.php'>ici</a> pour retourner à la page d'accueil</p> </div>"; } }else{ ?> <form class="box" action="" method="post"> <h1 class="box-logo box-title"> <a href="http://lc-sd.be/visa/">Visa Lc-sd.be</a> </h1> <h1 class="box-title">Modification de votre profil</h1> <input type="text" class="box-input" name="username" value="<?php echo $resultpr['username']; ?>" disabled="disabled" /> <input type="text" class="box-input" name="name" value="<?php echo $resultpr['name']; ?>" /> <input type="text" class="box-input" name="email" value="<?php echo $resultpr['email']; ?>" /> <input type="submit" name="submit" value="Modifier" class="box-button" /> <p class="box-index">Cliquez <a href='home.php'>ici</a> pour retourner à la page d'accueil</p> </form> <?php } ?> </body> </html>
jordane45
Messages postés
37264
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
22 mars 2023
4 548
>
Tzmagnum
Messages postés
129
Date d'inscription
dimanche 9 août 2009
Statut
Membre
Dernière intervention
10 mai 2022
4 avril 2021 à 08:25
4 avril 2021 à 08:25
Tu travailles sur un serveur ou en' Local ?
Quelle est l'URL qui est écrite dans ton navigateur lorsque tu submit le formulaire ?
Peux tu ajouter, au debut du script, un var_dump($_POST);. et nous dirr ce que ça t'affiche ?
Quelle est l'URL qui est écrite dans ton navigateur lorsque tu submit le formulaire ?
Peux tu ajouter, au debut du script, un var_dump($_POST);. et nous dirr ce que ça t'affiche ?
jordane45
Messages postés
37264
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
22 mars 2023
4 548
>
jordane45
Messages postés
37264
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
22 mars 2023
4 avril 2021 à 08:50
4 avril 2021 à 08:50
Ah.. je viens de voir...
Enleve le disabled="disabled" ... et utilise, à la place, le readonly
https://www.w3schools.com/tags/att_input_readonly.asp
Sinon, le username n'est jamais envoyé dans le form
Enleve le disabled="disabled" ... et utilise, à la place, le readonly
https://www.w3schools.com/tags/att_input_readonly.asp
Sinon, le username n'est jamais envoyé dans le form
Tzmagnum
Messages postés
129
Date d'inscription
dimanche 9 août 2009
Statut
Membre
Dernière intervention
10 mai 2022
>
jordane45
Messages postés
37264
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
22 mars 2023
4 avril 2021 à 11:32
4 avril 2021 à 11:32
Bonjour,
Avec readonly et « var_dump($_POST) » au début, cela fonctionne, mais cela m’affiche les erreurs suivantes :
C’est un serveur dédier Ovh.
Et l’url lorsque je fais le submit, c’est la même que celle du formulaire : http://lc-sd.be/visa/login.php
Merci d’avance.
Avec readonly et « var_dump($_POST) » au début, cela fonctionne, mais cela m’affiche les erreurs suivantes :
array(4) { ["username"]=> string(5) "Admin" ["name"]=> string(19) "Tziolopoulos Kevin1" ["email"]=> string(18) "tzmagnum@gmail.com" ["submit"]=> string(8) "Modifier" }
Notice: Undefined variable: name in /var/www/visa/admin/profil_admin.php on line 36
Notice: Undefined variable: email in /var/www/visa/admin/profil_admin.php on line 37
C’est un serveur dédier Ovh.
Et l’url lorsque je fais le submit, c’est la même que celle du formulaire : http://lc-sd.be/visa/login.php
Merci d’avance.
yg_be
Messages postés
21319
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
22 mars 2023
1 327
>
Tzmagnum
Messages postés
129
Date d'inscription
dimanche 9 août 2009
Statut
Membre
Dernière intervention
10 mai 2022
4 avril 2021 à 11:42
4 avril 2021 à 11:42
peux-être souhaites-tu plutôt ceci:
$form_username = mysqli_real_escape_string($conn, $form_username); $form_name = mysqli_real_escape_string($conn, $form_name); $form_email = mysqli_real_escape_string($conn, $form_email);
Tzmagnum
Messages postés
129
Date d'inscription
dimanche 9 août 2009
Statut
Membre
Dernière intervention
10 mai 2022
4 avril 2021 à 12:28
4 avril 2021 à 12:28
Merci beaucoup, cela fonctionne
Modifié le 2 avril 2021 à 00:14
Et mon formulaire d’inscription fonctionne avec cela via ma requête insert. Et celui-ci fonctionne.
Bien à vous
2 avril 2021 à 11:03
3 avril 2021 à 02:59
Merci quand même
3 avril 2021 à 09:46
Ton else correspond au isset $_REQUEST.... Pas surle if($res)
De rien.