Creation d'un calendrier trimestriel

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Creation d'un calendrier trimestriel

Re: Creation d'un calendrier trimestriel

par valmeras » 04 mars 2012, 20:06

Merci beaucoup Ryle en fait je n'avais même pas remarqué ma bêtise. Encore merci car tu me sauve la vie :D

Re: Creation d'un calendrier trimestriel

par Ryle » 04 mars 2012, 20:02

L'attribut selected dans le code html que tu génères avec php doit être placé DANS la balise <option ... >, pas après le </option> ;)

Re: Creation d'un calendrier trimestriel

par valmeras » 04 mars 2012, 19:13

Bonsoir à tous

j'ai encore un autre problème que je n'arrive pas à resoudre.
voici mes deux codes :

page 1
<?php
session_start();
$date = date('Y');
?>

<form action='test2.php' method='POST'>
<select name='date_test' size='1'>

<?php
$trim_ob =
  array(
    array('I', 31),
    array('II', 30),
    array('III',30),
    array('IV', 31 )
  );
for($i = $date; $i <= $date + 2; $i++)
    {
  foreach($trim_ob as $cle => $valeur)
    {
    $mois = 3 * $cle + 3;
    $trimestre = $i.'-'.$mois.'-'.$valeur[1];
    echo('<option value="'.$trimestre.'"');

    echo('>Trim '.$valeur[0].', '.$i.'</option>');  
    };
    };
if(isset($_SESSION['fix_obj'][7]) && ($_SESSION['fix_obj'][7] == $trimestre))
    {
      echo('selected="selected"');
    };
?>
</select>
<input type='submit' value='Go' />
</form>
page 2
<?php
session_start();
$_SESSION['fix_obj'][7] = $_POST['date_test'];
echo $_SESSION['fix_obj'][7];
?>
<p><a href="test.php">Retour</a></p>
Sur la page 1, si la variable $_SESSION['fix_obj'][7] est définie, la liste déroulante s’arrête sur le résultat choisi, à savoir par exemple : si on a choisi trim IV, 2012 et que c'est ce qui est stocker dans $_SESSION['fix_obj'][7], lorque l'on revient sur la page 1 c'est trim IV, 2012 qui apparaitre dans la liste deroulante. Mais je n'arive pas à le faire or c'est la derniere etape de mon travail, alors j'ai besoin d'aide.

Re: Creation d'un calendrier trimestriel

par valmeras » 03 mars 2012, 17:20

Merci beaucoup dix2 car ton code m'a beaucoup aidé.

Re: Creation d'un calendrier trimestriel

par dix2 » 29 févr. 2012, 14:54

salut,

Pour la page 1:
$ongoingYear = date('Y');

echo('<select name="quarter" size="1">');
$quarters =
  array(
    array('I',   31),
    array('II',  30),
    array('III', 30),
    array('IV',  31)
  );
for($i = $ongoingYear; $i <= $ongoingYear + 2; $i++){
  foreach($quarters as $numQuarter => $infoQuarter){
    $month = 3 * $numQuarter + 3;
    $formattedQuarter = $i.'-'.$month.'-'.$infoQuarter[1];
    echo('<option value="'.$formattedQuarter.'"');
    if(isset($_SESSION['fix_obj'][7]) && ($_SESSION['fix_obj'][7] == $formattedQuarter)){
      echo(' selected="selected"');
    };
    echo('>trim '.$infoQuarter[0].', '.$i.'</option>');
  };
};
echo('</select>');
Pour la page 2:
$_SESSION['fix_obj'][7] = $_POST['quarter'];
@+
dix2

Re: Creation d'un calendrier trimestriel

par valmeras » 28 févr. 2012, 18:26

Merci.
et on peut integrer cela à un formulaire?

Re: Creation d'un calendrier trimestriel

par Mazarini » 28 févr. 2012, 17:15

1) calcul du trimestre en fonction du mois en cours (cf fonction de date) : nombre 1, 2, 3 ou 4 ($courant) et calcul de l'annee ($année)
2) initialisation d'une chaine : $trimestre = array(1=>'trim I,2=>'trim II,...);
3) une boucle :
$liste = array();
for ($i=1;$i<15;$i++)
{
   $liste[] = $trimestre[$courant].','.$année;
   if ($courant == 4)
   {
      $courant = 1;
      $annee++;
   } 
   else
   {
      $courant++;
   }
} 

Re: Creation d'un calendrier trimestriel

par valmeras » 28 févr. 2012, 16:38

en fait je veux creer un formulaire avec une liste deroulante avec calendrier dynamique comme ceci : trim I, 2012

trim II, 2012

trim III, 2012

trim IV, 2012

trim I, 2013

trim II, 2013

trim III, 2013

trim IV, 2013

trim I, 2014

trim II, 2014

trim III, 2014

trim IV, 2014

Re: Creation d'un calendrier trimestriel

par moogli » 28 févr. 2012, 16:28

pour faire quoi ? :mrgreen: :mrgreen:

Re: Creation d'un calendrier trimestriel

par valmeras » 28 févr. 2012, 15:43

ok alors par quoi ou par ou dois-je commencer? car je suis un peu perbleue

Re: Creation d'un calendrier trimestriel

par moogli » 28 févr. 2012, 15:23

heu ben la va falloir poser une question, parce que tous ceci n'est est pas une. ça ressemble plus à une réponse de forum non ?

@+

Creation d'un calendrier trimestriel

par valmeras » 28 févr. 2012, 15:10

Bonjour les gars. J'ai travail à faire mais je sais pas par ou commencer car je ne comprend pas grand à ce que je dois faire alors j'ai besoin de votre aide.
Voici le problème :


Sur la page 1, un formulaire avec une liste déroulante constituée ainsi :

trim I, 2012

trim II, 2012

trim III, 2012

trim IV, 2012

trim I, 2013

trim II, 2013

trim III, 2013

trim IV, 2013

trim I, 2014

trim II, 2014

trim III, 2014

trim IV, 2014

Lors du lancement de la page, elle est constituée dynamiquement de :

$trim_ob=array("trim I", "trim II", "trim III", "trim IV");

ET de 3 années : courante, suivante et dans 2 ans (c’est-à-dire pour 2012 : 2012,2013 et 2014). Si nous étions en 2014 : 2014,2015,2015.



Sur la page 2, tu récupère le résultat et tu l’édites au format date mysql standard :

Exemple si trim IV a été choisi, tu éditeras : 2012-12-31.

Le résultat est stocké dans la variable de session suivante : $_SESSION['fix_obj'][7]

Tu crées un lien pour revenir à la page 1.

Sur la page 1, si la variable $_SESSION['fix_obj'][7] est définie, la liste déroulante s’arrête sur le résultat choisi, à savoir pour notre exemple choisi ci-dessus : trim IV, 2012.

je compte sur vous les gars. merci