Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1265 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Variable de Session avec Input

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Variable de Session avec Input

n°1905848
ozone--24
Posté le 16-07-2009 à 15:17:03  profilanswer
 

Bonjour à tous !
 
Je suis actuellement en train de créer une plateforme de e-mailing.
Pour ceci l'utilisateur de la plateforme à le choix entre différents critères,
Comme : le Sexe (2 checkbox) ou l'âge (2 input text), voir l'exemple après
Après avoir validé, j'aimerai afficher les résultats choisi par l'utilisateur.
C'est à dire de checker (valider) la checkbox si il l'avait checké et/ou de remettre la valeur dans le "input text" précédemment saisie.
 
Pour cela, j'ai utilisé les variable de Session "$_SESSION[' ']" comme ceci :

Code :
  1. Homme
  2.    <input style="position:relative; top: 2px;" type='checkbox' name="H"
  3. <?php
  4.    if( isset($_SESSION['H']) && $_SESSION['H'] == 1)
  5.         echo 'checked ';
  6. ?>
  7.    />


 
ou encore :

Code :
  1. <input type='text' size='10' name="age_inf" value="
  2.      <?php
  3. if( !empty($_SESSION['age_inf']))
  4.    echo $_SESSION['age_inf'];
  5.      ?>
  6. " />


 
Le problème c'est qu'une fois les critères choisi et le bouton "Valider" pressé les critères ne s'affichent pas, mais si j'appuie sur F5 pour recharger la page, les critères choisis auparavant apparaissent.
 
Si quelqu'un pouvait m'aider :-)
 
Merci d'avance !

mood
Publicité
Posté le 16-07-2009 à 15:17:03  profilanswer
 

n°1906023
Profil sup​primé
Posté le 17-07-2009 à 08:26:46  answer
 

Il faudrait un peu plus de code (voir où est-ce que tu set les variables de sessions) ;)
Et pour moi des boutons radio sont plus appropriés pour le sexe que des checkboxes :D (ou plutot un select)


Message édité par Profil supprimé le 17-07-2009 à 08:27:03
n°1906094
ozone--24
Posté le 17-07-2009 à 10:49:11  profilanswer
 

Alors dans l'ordre je fais :
 

  • Tout d'abord je teste si la variable existe et si elle est à 1, si c'est le cas je coche la case, ça veut dire que l'utilisateur de la plateforme d'e-mailing a coché cette case
Code :
  1. Oui <input style="position:relative; top: 2px;" type='checkbox' name="photo_oui"
  2. <?php
  3.    if( isset($_SESSION['photo_oui']) && $_SESSION['photo_oui'] == 1)
  4. echo 'checked ';
  5. ?>
  6. />


  • Ensuite j'initialise toute les variables $_SESSION à 0 ou à ' ' pour pas que les cases soient cochés tout le temps
Code :
  1. $_SESSION['photo_oui'] = 0;


 

  • Enfin, je change le contenu de la variable si l'option a été coché
Code :
  1. if( isset($_POST['photo_oui']) )
  2. {
  3.    $envoyer_email_req .= "And Photo = '1' ";
  4.    $_SESSION['photo_oui'] = 1;
  5. }

n°1906099
esox_ch
Posté le 17-07-2009 à 10:54:37  profilanswer
 

remplace ton  

Code :
  1. if( isset($_SESSION['photo_oui']) && $_SESSION['photo_oui'] == 1)


 
par  

Code :
  1. if( (isset($_SESSION['photo_oui']) || isset($_POST['photo_oui'])) && ($_SESSION['photo_oui'] == 1 ||  $_POST['photo_oui'] == 1))


 
 


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°1906104
ozone--24
Posté le 17-07-2009 à 11:03:05  profilanswer
 

Merci pour la rapidité de ta réponse Esox
 
Cependant j'ai un petit problème il me met :  
 

Code :
  1. Notice: Undefined index: photo_oui in C:\Program Files\WampServer\www\Blog\emailing.php on line 186
  2. />


 
Comment je peux remédier à cela ?

n°1906107
esox_ch
Posté le 17-07-2009 à 11:14:38  profilanswer
 

Ah oui juste...

 
Code :
  1. if( (isset($_SESSION['photo_oui']) && $_SESSION['photo_oui'] == 1) ||  (isset($_POST['photo_oui']) &&  $_POST['photo_oui'] == 1))
 

Contrôle les parentèzes, il y en a peut-être une qui est mauvais endroit, j'ai pas de PHP sous la main pour tester


Message édité par esox_ch le 17-07-2009 à 11:14:53

---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°1906110
ozone--24
Posté le 17-07-2009 à 11:22:26  profilanswer
 

Je crois pas qu'il y'ait un problème de paranthèses.
J'ai testé le dernier bout de code que tu m'as passé, il me fait exactement la même chose.
 
Je sais pas trop comment faire.
Tu as pas une autre idée ?

n°1906115
esox_ch
Posté le 17-07-2009 à 11:28:16  profilanswer
 

Tu peux nous donner le code source entier?


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°1906117
ozone--24
Posté le 17-07-2009 à 11:36:35  profilanswer
 

J'avais posté mon problème sur un autre forum.
Quelqu'un a réussi à me débloquer.
 
J'ai rajouté ceci tout au début de mon code php :  

Code :
  1. $voui = isset($_POST['validation_oui']);
  2. $vnon = isset($_POST['validation_non']);
  3. $_SESSION['validation_oui'] = ($voui) ? (($vnon) ? 0 : 1) : 0;
  4. $_SESSION['validation_non'] = ($vnon) ? (($voui) ? 0 : 1) : 0;


 
Je lui ai demandé de m'expliquer ce code parce que je n'utilise jamais cette méthode pour coder.
ça marche, mais je comprends pas grand chose ^^


Message édité par ozone--24 le 17-07-2009 à 11:37:23
n°1906119
esox_ch
Posté le 17-07-2009 à 11:41:13  profilanswer
 

En fait ton problème venait (à mon avis) de l'endroit où tu as mis ton code PHP par rapport à où tu as mis ton code HTML.
Le fait qu'il t'ait demandé de mettre ce code tout au début résoud le problème (c'est en fait pour ça que je voulais voir tout ton code source)


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
mood
Publicité
Posté le 17-07-2009 à 11:41:13  profilanswer
 

n°1906125
ozone--24
Posté le 17-07-2009 à 11:51:32  profilanswer
 

Voila mon code source : http://dormeur.info.iut.u-bordeaux [...] ailing.php
 
Il est peut-être un peu effrayant ^^
 
Mais ce que j'avais pas vu, c'est que ça va marcher pour les critères qui font oui ou non, mais pour les critères comme l'âge ou la durée d'abonnement, c'est des input text, du coup je vois pas comment on peut faire.
 
Surtout que je vois pas trop ce que ça fait le bout de code que m'a passé la personne sur l'autre forum

n°1906129
esox_ch
Posté le 17-07-2009 à 12:03:14  profilanswer
 

en fait son bout de code est la forme plus ou moins abbrégée de :
 

Code :
  1. if(isset($_POST['validation_oui']))
  2. $_SESSION['validation_oui']  == 1;
  3. else
  4. $_SESSION['validation_oui']  == 0;
  5.  
  6. if(isset($_POST['validation_non']))
  7. $_SESSION['validation_non']  == 1;
  8. else
  9. $_SESSION['validation_non']  == 0;


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°1906237
ozone--24
Posté le 17-07-2009 à 17:40:35  profilanswer
 

En fait il a voulu faire ça :

Code :
  1. if ($voui)
  2. {
  3.     if ($vnon)
  4.         $_SESSION['validation_oui'] = 0;
  5.     else
  6.         $_SESSION['validation_oui'] = 1;
  7. }
  8. else
  9.     $_SESSION['validation_oui'] = 0;

n°1906241
esox_ch
Posté le 17-07-2009 à 18:10:35  profilanswer
 

Non :o  
Regarde mieux son code


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Variable de Session avec Input

 

Sujets relatifs
recuperation d'une session a partir d'un fichier pcapRécuperer le chemin depuis un input (type = file )
[RESOLU]TRés URGENT chekbox et passage de variableProblème avec variable php
aide jquery thickbox passage de variable[Résolu][ASP.NET][C#] Heritage et partage de variable
PL/SQL : utilisation de variable pour liste de valeur dans requêtevariable vba et fonction excel
PHP support de sessioncalcule de la longeur de la variable
Plus de sujets relatifs à : Variable de Session avec Input


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR