Probleme avec mon strotime...

Résolu
Marlocq Messages postés 119 Statut Membre -  
 Utilisateur anonyme -
Voila mon problème :
Je suis en train de créer un moteur de recherche qui permet à l'utilisateur de faire une recherche sur les dates (soit par mois soit par année)entre autres. Le soucis viens du faites qu'a partir du moment ou on ne rentre pas un mois du premier if le strtotime me retourne systématique la valeur 1391209200 ou plus selon le jour mais ça équivaut de toute façon au 1970/01/01 et donc pas la date entrée...
Voici le code:

$yearpost=$_POST['an'];
$moispost=$_POST['mois'];
$datedeb = "$yearpost-$moispost-1";
$datedebstr = strtotime ($datedeb);
if ($moispost==1 or $moispost==3 or $moispost==5 or $moispost==7 or $moispost==8 or $moispost==10 or $moispost==12) {
$datefin = "$yearpost-$moispost-31";
$datefinstr = strtotime ($datefin);
} elseif ($moispost==2) {
if (date("L", mktime(0, 0, 0, 1, 1, $yearpost)) == 1) {
$datefin = "$yearpost-$moispost-29";
$datefinstr = strtotime ($datefin);
}
else {
$datefin = "$yearpost-$moispost-28";
$datefinstr = strtotime ($datefin);
}
} else {
$datefin = "$yearpost-$moispost-30";
$datefinstr = strtotime ($datefin);
}

La date d'entré est toujours la valeur mois à laquelle je rajoute 01 et la date de sotie moi + x jours en fonction du mois...

4 réponses

  1. Marlocq Messages postés 119 Statut Membre
     
    petit up...
    0
  2. Utilisateur anonyme
     
    Bonjour

    Je ne vois pas où est ton problème, j'ai essayé ton script et il a l'air de bien marcher.
    Et la valeur 1391209200 ne correspond pas au 1970/01/01 (début de l'ère UNIX = 0), mais au 1er février 2014.
    Le problème vient peut-être des valeurs que tu passes dans $_POST['an'] et $_POST['mois'] ?
    0
  3. Marlocq Messages postés 119 Statut Membre
     
    Non en faite grâce à toi de manière indirecte j ai repéré ma connerie...
    je faisais
    $datefinbis =date("Y-m-d", $datefin);
    $datedebbis=date("Y-m-d", $datedeb);

    à la place de
    $datefinbis =date("Y-m-d", $datefinstr);
    $datedebbis=date("Y-m-d", $datedebstr);

    Note que le problème se pose sur autre chose maintenant...
    Je vais essayer de voir d'où viens mon soucis avant de remettre un poste ici
    0
  4. Marlocq Messages postés 119 Statut Membre
     
    bon je ferme ici et je relance dans sql j ai un soucis sur ma requête que je n'avais pas repéré en faite....
    Merci pour ton aide
    0
    1. Utilisateur anonyme
       
      de rien :-)
      0