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

  FORUM HardWare.fr
  Programmation
  PHP

  Petit problème avec les cases à cocher !

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Petit problème avec les cases à cocher !

n°1889730
D_AmOn
Posté le 30-05-2009 à 01:18:37  profilanswer
 

Bonsoir,
 
J'ai un petit problème avec une case à cocher, celle de la newsletter.
Si l'internaute veut s'inscrire à la newsletter, il doit cocher la case qui va avec.
 
Voici un extrait du formulaire :
 

Code :
  1. <p align="left" style="margin-left:70px"><input type="checkbox" name="newsletter" id="newsletter"
  2.                 value="oui" <?php echo getNewsletter('oui'); ?> checked="checked" />
  3.     Je souhaite recevoir par e-mail la Newsletter.<br/></p>


 
Si l'internaute coche cette case, la valeur "oui" est inscrite dans la base de donnée.
Donc quand il la coche, je n'ai aucun problème, la valeur "oui" est bien inscrite dans la base.
 
Par contre, s'il ne souhaite pas s'inscrire à la newsletter et qu'il décoche la case, voilà mon problème !! Lors de la validation, je suis directement redirectioner vers ma page index.php, et bien sur aucun enregistrement n'est effectué dans la base.
 
Donc en gros, ça marche quand il coche, mais ça bug quand il décoche !
 
 
 
Voici ma fonction getNewsletter, appelé dans le formulaire :
 

Code :
  1. function getNewsletter($newsletter)
  2. {
  3.  $default = '';
  4.  if (isset($_POST['newsletter_info']) and $_POST['newsletter_info'] == '')
  5.  {
  6.   $_POST['form_newsletter'] == $newsletter
  7.   {
  8.    $default='checked="checked"';
  9.   }
  10.  }
  11.  return $default;
  12. }


 
 
Un extrait de ma page de traitement :
 

Code :
  1. // Newsletter
  2. if(isset($_POST['newsletter']))
  3. {
  4.  $newsletter = trim($_POST['newsletter']);
  5.  $newsletter_result = checkNewsletter($newsletter);
  6.  if($newsletter_result == 'newsletterfalse')
  7.  {
  8.   $_SESSION['newsletter_info'] = '<span class="erreur">Erreur validation newsletter.</span><br/>';
  9.   $_SESSION['form_newsletter'] = '';
  10.   $_SESSION['erreurs']++;
  11.  }
  12.  else if($newsletter_result == 'ok')
  13.  {
  14.   $_SESSION['newsletter_info'] = '';
  15.   $_SESSION['form_newsletter'] = $newsletter;
  16.  }
  17. }
  18. else
  19. {
  20.  header('Location: ../index.php');
  21.  exit();
  22. }


 
 
 
Et enfin la fonction checkNewsletter appelée dans la page de traitement :
 

Code :
  1. function checkNewsletter($newsletter)
  2. {
  3.  if(!preg_match('#^(oui)*$#', $newsletter)) return 'newsletterfalse';
  4.  else return 'ok';
  5. }


 
 
Merci d'avance pour votre aide !

mood
Publicité
Posté le 30-05-2009 à 01:18:37  profilanswer
 

n°1889774
D_AmOn
Posté le 30-05-2009 à 14:19:28  profilanswer
 

Bonjour,
 
J'ai réglé mon problème ;)

n°1889796
toughzaa
Posté le 30-05-2009 à 17:45:49  profilanswer
 

Je te conseille de dire comment tu as fait au cas où quelqu'un en aurait besoin ;)

n°1889818
D_AmOn
Posté le 30-05-2009 à 19:25:41  profilanswer
 

toughzaa a écrit :

Je te conseille de dire comment tu as fait au cas où quelqu'un en aurait besoin ;)


 
 
Voici la réponse, dans la page traitement, il faut mettre ça :
 

Code :
  1. // Newsletter
  2.     if(isset($_POST['newsletter']) && ($_POST['newsletter'] == 'oui'))
  3. {
  4.      $newsletter = 'oui';
  5. }
  6. else
  7. {
  8.       $newsletter = '';
  9. }


 
 

n°1889833
toughzaa
Posté le 30-05-2009 à 21:38:59  profilanswer
 

Merci ;)


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

  Petit problème avec les cases à cocher !

 

Sujets relatifs
Problème avec les numéros à l'étrangerProblème traitement bouton radio
Probleme IE[vb] problème de boucle avec datagridview
Problème de script création utilisateurs Active DirectoryProbleme pour inserer flash dans HTML
Problème avec Find(), Excel Vbaproblème de script qui s'arrête avant la fin [RESOLU]
problème de jointure entre deux requette séparéles instructions fonctionnent mais pas le script
Plus de sujets relatifs à : Petit problème avec les cases à cocher !


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