PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 Forum Général PHP » update une BDD avec variable » 20-09-2016 11:06:12

cost
Réponses : 3

Bonjour à tous,

J'ai tenté de nombreuses syntaxes en cherchant sur différents forums mais sans succès...

MON PROBLEME :

j ai un formulaire avec des données utilisateurs (nom, prenom...).

Je n'arrive pas à les modifier par les valeurs entrées par l'utilisateur

Mon code pour le formulaire :

<section id="content">
 
        <?php
     $ServerConn = mysqli_connect("localhost","root","","bdd");
 
   
   if  (!$ServerConn) {
    echo ('La Connexion au serveur impossible !!!! non execute-->');
    exit;
   }
         
 
   $Requete='SELECT * FROM membres WHERE email="'.$_SESSION['email'].'" ';
 
 
 
  $Result = $ServerConn->query($Requete);
 
 
     if  (!$Result) {
     echo ('Requete Invalide!!');
       exit ;
   }
 
    while ($data = mysqli_fetch_array($Result)) {
   
      $id=$data['id'];
      $nom=$data['nom'];
      $prenom=$data['prenom'];
      $telephone=$data['telephone'];
      $email=$data['email'];
      $mdp=$data['mdp'];
      $date_de_naissance=$data['date_de_naissance'];
      $adresse_principale=$data['adresse_principale'];      
    }
 
 
 
?>
 
 
<FORM method="POST" action="modifier_mon_profil.php" enctype="multipart/form-data">
 
<div class="table-wrapper">
                  <table class="alt">
 
                    <tbody>
                      <tr>
                        <td>Nom</td>
                        <td> <input type="text" name="nom" id="nom" <?php echo 'value ="'.$nom.'"'; ?> placeholder="Nom"   /> </td>
                       
                      </tr>
                      <tr>
                        <td>Prénom</td>
                        <td> <input type="text" name="prenom" id="prenom" <?php echo 'value ="'.$prenom.'"'; ?> placeholder="Prenom" /></td>
                       
                      </tr>
                      <tr>
                        <td>Téléphone</td>
                        <td> <input type="text" name="tel" id="tel" <?php echo 'value ="'.$telephone.'"'; ?> placeholder="tel" /> </td>
                        <tr>
                        <td>Email</td>
                        <td> <input type="email" name="email" id="email" <?php echo 'value ="'.$email.'"'; ?> placeholder="Email" /> </td>
                       
                      </tr>
                      <tr>
                        <td>Mot de Passe</td>
                        <td> <input type="text" name="mdp" id="mdp" <?php echo 'value ="'.$mdp.'"'; ?> placeholder="mdp" /></td>
                       
                      </tr>
                      <tr>
                        <td>Date de Naissance</td>
                        <td> <input type="text" name="date_de_naissance" id="date_de_naissance" <?php echo 'value ="'.$date_de_naissance.'"'; ?> placeholder="date de naissance" /> </td>
                        <tr>
                        <td>Adresse</td>
                        <td>   <input type="text" name="adresse_principale" id="searchTextField" <?php echo 'value ="'.$adresse_principale.'"'; ?> placeholder="adresse principale" /> </td>
                       
                      </tr>
                     
                     
                     
                    </tbody>
     
                  </table>
 </div>
 
 
  <ul class="actions">
                        <li><input type="submit" value="Modifier" class="special" /></li>
                      </ul>
 
            </form>    
 
 
     
                </section>

A partir de ce formulaire, l'utilisateur peut modifier les données puis cliquer sur le bouton "Modifier" pour mettre à jour les données.

Le bouton "Modifier" reconduit vers ce code :

$ServerConn = mysqli_connect("localhost","root","","bdd");
   
   if  (!$ServerConn) {
    echo ('La Connexion au serveur impossible !!!! non execute-->');
    exit;
   }
//Recuperer les données de la  BDD ? Get.. pour pouvoir les exploiter ?
 
 
 $Requete='SELECT * FROM membres WHERE email="'.$_SESSION['email'].'" ';
 $Result = $ServerConn->query($Requete);
 
     if  (!$Result) {
     echo ('Requete Invalide!!');
       exit ;
   }
 
    while ($data = mysqli_fetch_array($Result)) {
   
      $id=$data['id'];
      $nom=$data['nom'];
      $prenom=$data['prenom'];
      $telephone=$data['telephone'];
      $email=$data['email'];
      $mdp=$data['mdp'];
      $date_de_naissance=$data['date_de_naissance'];
      $adresse_principale=$data['adresse_principale'];      
    }
 
 
//$requete = mysql_query('UPDATE membres SET nom ="' . $nom . '" WHERE email="'.$_SESSION['email'].'"') or die(mysql_error());
 
 
$sql = "UPDATE membres SET nom = 'Nom modifié par l'utilisateur, prenom = 'prenom modifié par l'utilisateur WHERE id = '$id' ";
 
 
 
if ($ServerConn->query($sql) === TRUE) {
    echo "Record updated successfully";
    header ('Location: mon_profil.php');
} else {
    echo "Error updating record: " . $ServerConn->error;
}
 
$ServerConn->close();

C'est à ce niveau que je bloque :

1
$sql = "UPDATE membres SET nom = 'Nom modifié par l'utilisateur', prenom = 'prenom modifié par l'utilisateur' WHERE id = '$id' ";
Au lieu de 'Nom modifié par l'utilisateur' je voudrais mettre ce qu'a entré l'utilisateur dans le formulaire ;-)



Comme je l'ai dit, j ai utilisé de nombreuses syntaxes (par ex : nom ="'. $nom. '" ...) mais sans jamais y parvenir

Si vous avez possibilité de m'aiguiller ce serait top (je suis dessus depuis plus d'une semaine j'avoue que j'aimerais passer à autre chose ;-) )

Bon dimanche !

PS : Je me demande s'il faudrait pas que je crée des nouvelle variable après le formulaire du genre :

$nouveaunom = $nom ;

où $nom serait la valeur écrite par l'utilisateur et du coup récupérer "$nouveaunom" pour update ma bdd.

cela vous semble t il correct ?

par dans la maniere de l'ecrire, je n'ai pas trop d'idée :-/

Pied de page des forums

Propulsé par FluxBB