IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[Dates] Afficher les jours du mois dans un formulaire


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2007
    Messages : 14
    Points : 11
    Points
    11
    Par défaut [Dates] Afficher les jours du mois dans un formulaire
    Bonjour,

    Je suis en train de construire un formulaire d'inscription à un espace membre et je voudrais qu'une fonction PHP affiche tous les jours du mois automatiquement lorsque vient le temps d'indiquer notre date de naissance...

    Mon code est cependant défecteux et je ne sais pas pourquoi. Le message d'erreur est le suivant: Parse error: syntax error, unexpected ';' in /home/.../test.php on line 17
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <form action="index.php" method="post">
    <select name="DD">
    <?php 
    $i = 0;
     
    while ($i <= 31)
    {
    ?>
    <option value="<?php echo $i+; ?>"><?php echo $i+; ?></option>     ---C'EST LA LIGNE 17---
    <?php 
    }
    ?>
    </select>
    </form>
    Merci de bien vouloir m'aider!

  2. #2
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 255
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 255
    Points : 8 551
    Points
    8 551
    Billets dans le blog
    17
    Par défaut
    L'expression "$i+;" est incorrecte.

  3. #3
    Rédacteur
    Avatar de RideKick
    Homme Profil pro
    Directeur technique
    Inscrit en
    Septembre 2006
    Messages
    5 914
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5 914
    Points : 12 572
    Points
    12 572
    Par défaut
    J'ajoute meme qu'il te manque un + ($i++) !

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2007
    Messages : 14
    Points : 11
    Points
    11
    Par défaut
    Oups... merci!

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2007
    Messages : 14
    Points : 11
    Points
    11
    Par défaut
    Je viens de m'apercevoir qu'une variable de type DATE a la forme DD-MM-YYYY. Donc, il faudrait que les jours s'affichent dans le formulaire ainsi: 01,02,03,04,05, etc. Par contre, là ils sont comme cela: 1,2,3,4,5,etc. J'ai effectué plusieurs tentatives mais sans résultat encourageant. Voilà ce que j'ai entre autre essayé:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <?php 
    $i = 00;
     
    while ($i <= 31)
    {
    ?>
    <option value="<?php echo $i++; ?>"><?php echo $i; ?></option>
    <?php 
    }
    ?>
    Malgré le fait que j'aie écrit ''00'' à la place de ''0'' comme point de départ dans la fonction, rien ne change lors de l'affichage dans le formulaire...

  6. #6
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 777
    Points
    17 777
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <?php
    $i = 0;
     
    while ($i++ <= 31)
    {
    ?>
    <option value="<?php printf('%02d', $i); ?>"><?php echo $i; ?></option>
    <?php 
    }
    ?>


    Vous pouvez éventuellement faire cette opération au traitement du formulaire.

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2007
    Messages : 14
    Points : 11
    Points
    11
    Par défaut
    Okay merci beaucoup. Comme vous pouvez le voir, je ne suis vraiment pas habitué de travailler avec des champs de type DATE... J'ai juste un tout petit dernier problème lorsque vient le temps de rentrer la date de naissance dans la base de données. Voilà ce que je fais:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $birth_date = '" . $_POST["year"] . "'-'" . $_POST["month"] . "'- '" .$_POST["day"] . "';
     
    $result = mysql_query("INSERT INTO members (user_name, first_name, last_name, password, email, birth_date, sex, country, signup_date, validation_key) VALUES('" . $_POST["user_name"] . "','" . $_POST["first_name"] . "','" . $_POST["last_name"] . "', '" . md5($_POST["password"]) . "', '" . $_POST["email"] . "','" . $birth_date . "','" . $_POST["sex"] . "','" . $_POST["country"] . "', '" . time() . "', '" . $validation_key . "')");
    Suis-je dans le champs?

    Tout est inséré dans la table sauf $birth_date (bith_date = 0000-00-00).

  8. #8
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 777
    Points
    17 777
    Par défaut
    C'est plus simple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $birth_date = $_POST['year'] . '-' . $_POST['month'] . '- ' .$_POST['day'];
    Ou encore :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $birth_date = sprintf('%d-%d-%d', $_POST['year'], $_POST['month'], $_POST['day']);
    Ou encore :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $birth_date = "{$_POST['year']}-{$_POST['month']}-{$_POST['day']}";

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. afficher les Jours du mois
    Par backdraf dans le forum Développement
    Réponses: 9
    Dernier message: 27/09/2010, 15h23
  2. Comment compter les jours par mois entre deux dates
    Par Doo89 dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 10/01/2008, 21h21
  3. afficher la date et les jours de la semaine
    Par k-eisti dans le forum Langage
    Réponses: 2
    Dernier message: 19/09/2007, 17h09
  4. [Dates] Afficher les 7 derniers jours
    Par fabien14 dans le forum Langage
    Réponses: 7
    Dernier message: 12/05/2007, 00h16
  5. afficher les jours d'un mois
    Par lido dans le forum Langage SQL
    Réponses: 2
    Dernier message: 25/03/2006, 23h38

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo