Update

Fermé
papyclic Messages postés 446 Date d'inscription mercredi 5 novembre 2014 Statut Membre Dernière intervention 18 octobre 2016 - Modifié par irongege le 15/12/2014 à 13:26
papyclic Messages postés 446 Date d'inscription mercredi 5 novembre 2014 Statut Membre Dernière intervention 18 octobre 2016 - 17 déc. 2014 à 01:26
Bonjour
Après avoir commence mon site, j'ai un soucis concernant l'affichage de données dans mon formulaire pour pouvoir modifier les données si besoin.
C'est incroyable j'aimerai bien comprendre pourquoi mes données ne s'affiche pas dans mon formulaire j'ai l'impression d'avoir fait ce qu'il fallait.
Pouvez-vous me donner votre avis s'ils vous plait, ça serai très sympa de votre part, voici ma page, les inputs du formulaire je ne les affichent pas tous pour éviter de surcharger le code.
Pour les INSERT et l'affichage de donnée pour le compte des membres c'est parfait il y a juste les modif que je ne comprends pas.
En attendant un grand merci
$PARAM = array
 (
  'ID_ADHERENT'  => isset($_REQUEST['id_adherent']) ? $_REQUEST['id_adherent'] : '',
  'NOM'    => isset($_POST['nom']) ? Security::clean(strtoupper($_POST['nom'])) : '',
  'PRENOM'   => isset($_POST['prenom']) ? Security::clean(ucfirst($_POST['prenom'])) : '',
  'EMAIL'    => isset($_POST['email']) ? Security::clean($_POST['email']) : '',  
  'NAISSANCE'   => isset($_POST['naissance_3']) ? Security::clean($_POST['naissance_3']) . '-' .  Security::clean($_POST['naissance_2']) . '-' .  Security::clean($_POST['naissance_1']) : '',
  'FIXE'    => isset($_POST['fixe']) ? $_POST['fixe'] : '',
  'MOBILE'   => isset($_POST['mobile']) ? $_POST['mobile'] : '',
  'ADRESSE'    => isset($_POST['adresse']) ? Security::clean(ucfirst($_POST['adresse'])) : '',
  'LIEU_DIT'   => isset($_POST['lieu_dit']) ? Security::clean(ucfirst($_POST['lieu_dit'])) : '',
  'CODE_POSTAL'   => isset($_POST['code_postal']) ? Security::clean($_POST['code_postal']) : '',
  'VILLE'    => isset($_POST['ville']) ? Security::clean(strtoupper($_POST['ville'])) : '',
  'PSEUDO'   => isset($_POST['pseudo']) ? Security::clean(strtolower($_POST['pseudo'])) : '',
  'PASSWORD'   => isset($_POST['password']) ? Security::clean($_POST['password']) : ''
 );

if (isset($_REQUEST['action']) AND !empty($_REQUEST['action'])) {

 switch($_REQUEST['action']) {

  case 'modifier':

   $sql = 'UPDATE tb_adherent SET
      nom = :nom,
      prenom = :prenom,
      email = :email,
      naissance = :naissance,
      fixe = :fixe,
      mobile = :mobile,
      adresse = :adresse,
      lieu_dit = :lieu_dit,
      code_postal = :code_postal,
      ville = :ville,
      pseudo = :pseudo,
      password = :password
     WHERE
      id_adherent = :id_adherent';
   $requete = $bdd->prepare($sql);
   $requete->bindParam(':id_adherent',    $PARAM['ID_ADHERENT']);
   $requete->bindParam(':nom',      $PARAM['NOM']);
   $requete->bindParam(':prenom',     $PARAM['PRENOM']);
   $requete->bindParam(':email',    $PARAM['EMAIL']);
   $requete->bindParam(':naissance',    $PARAM['NAISSANCE']);
   $requete->bindParam(':fixe',     $PARAM['FIXE']);
   $requete->bindParam(':mobile',     $PARAM['MOBILE']);
   $requete->bindParam(':adresse',     $PARAM['ADRESSE']);
   $requete->bindParam(':lieu_dit',    $PARAM['LIEU_DIT']);
   $requete->bindParam(':code_postal',    $PARAM['CODE_POSTAL']);
   $requete->bindParam(':ville',     $PARAM['VILLE']);   
   $requete->bindParam(':pseudo',    $PARAM['PSEUDO']);
   $requete->bindParam(':password',    Security::hash($PARAM['PASSWORD']));
   $requete->execute();
   
   redir("index.php?body=compte_profil&type=compte");

   break;
  
  case 'edit':
   $sql = "SELECT *
     FROM tb_adherent
     WHERE id_adherent='" . $PARAM['ID_ADHERENT'] . "'
     0RDER BY nom ASC";   
   $requete = $bdd->prepare($sql);
   $requete->execute();
   $reponse = $requete->setFetchMode(PDO::FETCH_ASSOC);
   $donnees = $requete->fetch();
   
    if(preg_match('#(\d{4})-(\d{1,2})-(\d{1,2})#is', $donnees['naissance'], $match)) $date = array(1 => $match[3], 2 => $match[2],3 => $match[1]);
   break;
 }
}

 <form id="formulaire" action="" method="post">

  <table cellpadding="0" cellspacing="3">

   <tr>
    <th colspan="6">Coordonné :</th>
   </tr>
   <tr>
    <td width="20%">Nom :</td>
    <td width="30%"><input name="nom" class="content_input" size="30" type="text" value="<?php echo isset($donnees['nom']); ?>"/></td>
    <td width="20%">Prénom :</td>
    <td width="30%"><input name="prenom" class="content_input" size="30" type="text" value="<?php echo isset($donnees['prenom']); ?>"/></td>
   </tr>
   <input name="action" value="modifier" type="hidden" />
   <input type="submit" class="submit" value="Enregistrer"/>

 </form>
A voir également:

5 réponses

jordane45 Messages postés 38424 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 février 2025 4 734
Modifié par jordane45 le 15/12/2014 à 13:23
Bonjour,

C'est incroyable j'aimerai bien comprendre pourquoi mes données ne s'affiche pas dans mon formulaire j'ai l'impression d'avoir fait ce qu'il fallait.


Ton souci est que dans le formulaire (html) tu ne vois pas les infos provenant de ta BDD ?
C'est normal.. là... tu lui demandes de t'afficher si tes variables existent..
 isset($donnees['prenom'])
..(mais pas leur contenu ! )

<td width="30%"><input name="prenom" class="content_input" size="30" type="text" value="<?php echo isset($donnees['prenom']); ?>"/></td>


En ce qui me concerne.. je récupère les variables en PHP ...PUIS APRES.. je les utilise..;
Comme ceci :

<?php
$nom = isset($donnees['nom'])?$donnees['nom']:'';
$prenom =  isset($donnees['prenom'])?$donnees['prenom']:'';
// etc...

?>


<tr>
    <td width="20%">Nom :</td>
    <td width="30%"><input name="nom" class="content_input" size="30" type="text" value="<?php echo $nom; ?>"/></td>
    <td width="20%">Prénom :</td>
    <td width="30%"><input name="prenom" class="content_input" size="30" type="text" value="<?php echo $prenom; ?>"/></td>






Avant de poser une question, merci de lire la charte du site.
Cordialement, Jordane
0
papyclic Messages postés 446 Date d'inscription mercredi 5 novembre 2014 Statut Membre Dernière intervention 18 octobre 2016 3
15 déc. 2014 à 14:36
Bonjour
Merci de ta réponse très rapide d'ailleurs.
C'est dingue de na pas comprendre ça c'est quelque chose de très basique en plus.
Là j'ai récupéré les variables dans le tableau $PARAMS.
Donc j'ai juste à les afficher en fait non???
J'ai lu pas mal de tutos la-dessus ça me parait simple, je dois passer à côté de quelque chose.
Donc j'ai fait ça et me dit que la variables n'est pas définie.
<?php echo $nom; ?>

Merci encore de m'aider.
0
jordane45 Messages postés 38424 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 février 2025 4 734
15 déc. 2014 à 14:50
Donc j'ai fait ça et me dit que la variables n'est pas définie.

Ben.. ta variable $nom .. tu l'initialise où ?
0
papyclic Messages postés 446 Date d'inscription mercredi 5 novembre 2014 Statut Membre Dernière intervention 18 octobre 2016 3
15 déc. 2014 à 15:25
En fait j'avais déjà oublié de mettre dans le lien "action et l'id" pour afficher le formulaire comme ça
<a href="./index.php?body=modif_profil&type=compte&action=edit&id_adherent=<?php echo $donnees['id_adherent'];?>">Modifier mon profil</a>

Et avec ça les données du formulaire s'affichent bien.
Je te remercie.
Bonne continuation

PS En fait la variable $nom je l'initialise dans le tableau $PARAM
0
papyclic Messages postés 446 Date d'inscription mercredi 5 novembre 2014 Statut Membre Dernière intervention 18 octobre 2016 3
16 déc. 2014 à 00:20
Bonjour
Je reviens vers toi car il y a quelques vraiment de très bizarre, je vais essayer de t'expliquer au mieux..

J'ai mon formulaire avec toutes les donnees afficher dès lors que je clique sur le lien ci-dessous
<li> - <a href="./index.php?body=modif_profil&type=compte&action=edit&id_adherent=<?php echo $donnees['id_adherent'];?>">Modifier mon profil</a></li>

Lors des modifications il n'y a aucun soucis tout se passe bien.
Mais lors de la modification j'ai redirigé sur la page du formulaire et là mystère ça me met toutes les variables de non définie.
Par contre si je fait une redirection vers une autre page ce problème est transparent c'est à dire que l'utilisateur n'y vois pas.
Alors si tu peux m'aider encoçre s'il te plait.
Je te remercie
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
papyclic Messages postés 446 Date d'inscription mercredi 5 novembre 2014 Statut Membre Dernière intervention 18 octobre 2016 3
17 déc. 2014 à 01:26
Bonjour
Excuse moi encore en fait pour résoudre mon problème j'ai mis un arobase devant les variables comme ça
<?php echo @$donnees['nom']; ?>

As tu une autre solution car ça c'est pas le top.
Je te remercie
0