[PHP]La date d'un jour de la semaine en cours
Doywan
-
gloutonbargeot Messages postés 349 Date d'inscription Statut Membre Dernière intervention -
gloutonbargeot Messages postés 349 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je vais détailler un peu plus, j'ai besoin d'arriver à déterminer la date du vendredi, du samedi et du dimanche de la semaine en cours.
Je souhaite comparer ces trois dates à une autre et si la quatrième date est = à l'une des trois premières cela m'affiche les articles correspondant.
Mais pour éviter de sortir tout les articles dont la date tombe un vendredi, un samedi ou un dimanche dans l'année, je dois donc restreindre l'action à la semaine en cours.
Seulement ça deviens un peu complexe pour moi à ce niveau là, quelqu'un saurait il m'aider ?
Merci d 'avance,
Doywan
Je vais détailler un peu plus, j'ai besoin d'arriver à déterminer la date du vendredi, du samedi et du dimanche de la semaine en cours.
Je souhaite comparer ces trois dates à une autre et si la quatrième date est = à l'une des trois premières cela m'affiche les articles correspondant.
Mais pour éviter de sortir tout les articles dont la date tombe un vendredi, un samedi ou un dimanche dans l'année, je dois donc restreindre l'action à la semaine en cours.
Seulement ça deviens un peu complexe pour moi à ce niveau là, quelqu'un saurait il m'aider ?
Merci d 'avance,
Doywan
A voir également:
- Php date du jour
- Mise a jour chrome - Accueil - Applications & Logiciels
- Mise a jour windows 10 - Accueil - Mise à jour
- Mettre a jour chromecast - Accueil - Guide TV et vidéo
- Comment mettre à jour ses pilotes - Guide
- Nombre de jour entre deux dates excel - Guide
2 réponses
voici un petit script avec une fonction qui va te sortir un array des jours de la semaine en cours ( avec un format de date adaptable)
il te suffira de faire une requette dans ta base avec
il te suffira de faire une requette dans ta base avec
" SELECT * FROM ta_table WHERE date='".date_vendredi."' OR date='".date_samedi."' ORdate='".date_dimanche."'"
<html> <?php //fonction generation dates semaine complete en cours function dates_semaine($timestamp_aujourdhui){ $num_jour_sem=date("w",$timestamp_aujourdhui); // renvoie le numero du jour dans la semaine (0=dimanche, 1=lundi........) if($num_jour_sem==0){ $num_jour_sem=7; } // si dimanche on change le 0 par 7 $timestamp_1_jour=3600*24; //generation de l'array des dates des 7 jours de la semaine donc a la numerotation française for($j=1;$j<=7;$j++){ $timestamp_jour_sem=$timestamp_aujourdhui-(($num_jour_sem - $j)*$timestamp_1_jour); //on construit l'array pour la reponse: //a ce niveau la tu peux modifier le format de la date pour l'adapter a celui de ta base //$array_sem[$j]=date("d/m/Y",$timestamp_jour_sem); //au format français $array_sem[$j]=date("Ymd",$timestamp_jour_sem); //au format mysql } return $array_sem; } ?> <body> <form name="form1" method="post" action="dates_semaine_en_cours.php"> Cliquer sur Ok pour lancer le script <input type="Submit" name="envoyer" value="Ok" /> </form> <br /><br /> <?php if(isset($_POST['envoyer'])){ $array_dates=dates_semaine(mktime()); //appel fonction qui va retourner l'array contenant les dates de la semaine en cours //affichage du resultat echo "<b>Résultat pour la semaine</b><br />"; for($j=1;$j<=sizeof($array_dates);$j++){ echo $array_dates[$j]."<br />"; } echo "<br /><br /><b>soit pour le vendredi samedi dimanche:</b><br />"; echo 'Vendredi: '.$array_dates[5].'<br />'; echo 'Samedi: '.$array_dates[6].'<br />'; echo 'Dimanche: '.$array_dates[7].'<br />'; } ?> </body> </html>
gloutonbargeot
Messages postés
349
Date d'inscription
Statut
Membre
Dernière intervention
124
Oh oui merci l'ami! Ta fonction magique m'a bien aidé! Même 3 ans après! :D
je verrais un truc comme ça :
si tes articles sont entrés avec des dates tu cherche le numéro de la semaine des ces articles, puis ensuite tu recupere le N° de la semaine en cours.
une fois fait tu met en tableau tous tes articles qui on le meme N° de semaine que celle en cours et dont le jours =0 (dimanche) 6 samedi 5 vendredi
il faudra utiliser les fonctions date de php
$semaine_encours=date('W');//semaine actuelle
$jour_valide=array(0, 5, 6 ); //tableau correspondant au jours vendredi samedi dimanche
ensuite suivant le format dans lequel sont enregistré tes dates dans ta BD (l'ideal c'est un timestamp) tu fait une boucle sur tous tes articles
voila une piste j'ai pas testé le code, mais c'est le principe
si tes articles sont entrés avec des dates tu cherche le numéro de la semaine des ces articles, puis ensuite tu recupere le N° de la semaine en cours.
une fois fait tu met en tableau tous tes articles qui on le meme N° de semaine que celle en cours et dont le jours =0 (dimanche) 6 samedi 5 vendredi
il faudra utiliser les fonctions date de php
$semaine_encours=date('W');//semaine actuelle
$jour_valide=array(0, 5, 6 ); //tableau correspondant au jours vendredi samedi dimanche
ensuite suivant le format dans lequel sont enregistré tes dates dans ta BD (l'ideal c'est un timestamp) tu fait une boucle sur tous tes articles
$date_article=getdate($ladate_detonarticle_entimestamp);//retourne un array $semaine_article=('W',$ladate_detonarticle_entimestamp);//calcul du N° de semaine de l'article if($semaine_article== $semaine_encours && in_array($date_article['wday'],$jour_valide) { //c'est bon }
voila une piste j'ai pas testé le code, mais c'est le principe