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

Requêtes MySQL Discussion :

Requête à partir du numéro de semaine


Sujet :

Requêtes MySQL

  1. #1
    Membre régulier
    Homme Profil pro
    retraité
    Inscrit en
    Mars 2008
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Mars 2008
    Messages : 72
    Points : 108
    Points
    108
    Par défaut Requête à partir du numéro de semaine
    bonsoir
    je voudrais savoir si l'on peut faire une requete sur une table a partir d'un numero de semaine
    je m’explique une table (comme dans l'image jointe) champ 1num_semaine;champ3 parcours;champ4 ville
    sur la page du site (php) j'ai une requete qui m'affiche date et numero de semaine
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <?php
    $date = date("d-m-Y");
    Print("Nous sommes le $date<br> ");        
    		 echo '<br /><div align="center"> <font face="arial" size="2" color="blue"> Semaine N° :';
    		 echo date("W</br>");// retourne le numero de semaine
    ?>
    donc est il possible de formuler une requete basée sur cette fonction
    qui me retournerait et aficherait semaine N° : 7 parcours S-02R Les MESNULS,personellement je suis paumé
    voici la pj
    Nom : Table.jpg
Affichages : 750
Taille : 121,9 Ko
    merci

  2. #2
    Membre régulier
    Homme Profil pro
    retraité
    Inscrit en
    Mars 2008
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Mars 2008
    Messages : 72
    Points : 108
    Points
    108
    Par défaut
    Bonjour
    pour revenir a ma requete cela pourait ressembler
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT Parcours, Ville_Destination, Distance 
    FROM parcours_2016;
    WHERE Num_Semaine='date("W")';// retourne semaine 7

  3. #3
    Expert éminent sénior Avatar de Artemus24
    Homme Profil pro
    Agent secret au service du président Ulysses S. Grant !
    Inscrit en
    Février 2011
    Messages
    6 381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Agent secret au service du président Ulysses S. Grant !
    Secteur : Finance

    Informations forums :
    Inscription : Février 2011
    Messages : 6 381
    Points : 19 065
    Points
    19 065
    Par défaut
    Salut andre260.

    Si je prends mon calendrier de cette année (2016), je constate que la semaine numéroté 1 commence le lundi 04 janvier 2016.
    En consultant la fonction week, le mode doit être à 1 (pour le lundi).

    Maintenant si tu veux sélectionner la 7 ième semaine de l'année 2016, il faut tester la fonction week :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    where week(date_sortie, 1) = 7
    Tu définies une colonne de nom 'num_semaine' qui est redondante avec la date 'date_sortie'.
    Sauf si tu as un usage particulier, la colonne 'num_semaine' ne sert à rien.

    En consultant sous php la fonction date, il est exacte que date('W') donne le numéro de la semaine dans l'année (le W est une majuscule).
    Il est dit que la semaine commence par le lundi.

    Ce qui fait qu'en php, cela donne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <?php
    $sem = date('W');
     
    $sql = 'select * from parcours_2016 where week(date_sortie, 1) = '.$sem;
    ?>
    @+
    Si vous êtes de mon aide, vous pouvez cliquer sur .
    Mon site : http://www.jcz.fr

  4. #4
    Membre régulier
    Homme Profil pro
    retraité
    Inscrit en
    Mars 2008
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Mars 2008
    Messages : 72
    Points : 108
    Points
    108
    Par défaut
    Bonjour Artemus
    Je te remercie de ton aide
    tu as parfaitement compris le sujet
    alors effectivement la colonne de date ne sert a rien (elle a toujours existé)
    avant de m'attaquer au php, mysql le site etait en html5 + js
    donc nous tournions sur la variable N° de semaine (issue d'une fonction) + des tableaux array qui faisait tourner le tout
    inconvenient tous les ans il fallait reconstruire, alors qu'avec une table sur phpmyadmin c'est la facilité.
    des ce soir je mets ta solution en oeuvre
    bonne journée
    Andre

  5. #5
    Membre régulier
    Homme Profil pro
    retraité
    Inscrit en
    Mars 2008
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Mars 2008
    Messages : 72
    Points : 108
    Points
    108
    Par défaut
    oups oublié d'écrire
    sauf qu'avec ton code
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <?php
    $sem = date('W');
     
    $sql = 'select * from parcours_2016 where week(date_sortie, 1) = '.$sem;
    ?>
    je désire qu'il m'affiche le N° du parcours (ex:N-02R) ville_destination et distance donc de la semaine N°7
    je sèche pour la suite....

  6. #6
    Expert éminent sénior Avatar de Artemus24
    Homme Profil pro
    Agent secret au service du président Ulysses S. Grant !
    Inscrit en
    Février 2011
    Messages
    6 381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Agent secret au service du président Ulysses S. Grant !
    Secteur : Finance

    Informations forums :
    Inscription : Février 2011
    Messages : 6 381
    Points : 19 065
    Points
    19 065
    Par défaut
    Salut andre260.

    Citation Envoyé par andre260
    je désire qu'il m'affiche le N° du parcours (ex:N-02R) ville_destination et distance donc de la semaine N°7
    Mon exemple fait ce que tu demandes, ou bien je n'ai pas compris ta question.

    A moins que tu désires le code php pour extraire tes lignes ???
    Comme nous sommes dans le forum consacré à mysql, je te donne que la requête pour extraire ce dont tu as besoin.
    Si tu ne sais pas comment faire en php, pour manipuler une table, il vaut mieux s'adresser au forum consacré à php.

    Si tu ne veux pas le "select *", alors il suffit de mettre les colonnes que tu désires à l'affichage, comme ci-après :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <?php
    $sem = date('W');
     
    $sql = 'select parcours,
                   ville_destination,
                   distance,
                   week(date_sortie, 1) as num_semaine
                   from parcours_2016
                   where week(date_sortie, 1) = '.$sem;
    ?>
    @+
    Si vous êtes de mon aide, vous pouvez cliquer sur .
    Mon site : http://www.jcz.fr

  7. #7
    Membre régulier
    Homme Profil pro
    retraité
    Inscrit en
    Mars 2008
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Mars 2008
    Messages : 72
    Points : 108
    Points
    108
    Par défaut
    Je reviens sur ta solution proposée et je te remercie
    il y a une erreur " Parse error: syntax error, unexpected ';' in /home/acacycloiu/www/index.php on line 263"
    $reponse = $bdd->query('SELECT * FROM parcours_2016 where week(Date_Sortie, 1) = '.$sem;
    si je fais (ou je force)
    $reponse = $bdd->query('SELECT * FROM parcours_2016 where Num_Semaine ="07";
    ca fonctionne mes champs s'affichent bien sur php (site),
    je pense qu'il faut modifier le code apres la condition where
    qu'il aille bien chercher le numero de semaine dans le champ correspondant, qu'en pensez vous? je continue de chercher une solution
    Merci

  8. #8
    Expert éminent sénior Avatar de Artemus24
    Homme Profil pro
    Agent secret au service du président Ulysses S. Grant !
    Inscrit en
    Février 2011
    Messages
    6 381
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Agent secret au service du président Ulysses S. Grant !
    Secteur : Finance

    Informations forums :
    Inscription : Février 2011
    Messages : 6 381
    Points : 19 065
    Points
    19 065
    Par défaut
    Salut andre260.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Parse error: syntax error, unexpected ';' in /home/acacycloiu/www/index.php on line 263
    Bien sûr qu'il y a une erreur, tu as oublié de mettre la parenthèse fermente (en rouge).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $reponse = $bdd->query('SELECT * FROM parcours_2016 where week(Date_Sortie, 1) = '.$sem);
    Pour ma part, je n'écris jamais ainsi la requête que je dois exécuter.

    Fais le en deux temps.
    Le premier, tu fais la concaténation, comme ci-après :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $sql = 'SELECT * FROM parcours_2016 where week(Date_Sortie, 1) = '.$sem;
    Et dans un deuxième temps, tu appelles simplement ta requête, comme ci-après :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $reponse = $bdd->query($sql);
    @+
    Si vous êtes de mon aide, vous pouvez cliquer sur .
    Mon site : http://www.jcz.fr

  9. #9
    Membre régulier
    Homme Profil pro
    retraité
    Inscrit en
    Mars 2008
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Mars 2008
    Messages : 72
    Points : 108
    Points
    108
    Par défaut ouf
    voici le code et merci de ton aide
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    $sem = date('W');
     $reponse = $bdd->query('SELECT * FROM parcours_2016 where Num_Semaine = '.$sem); 
     
    echo '<p></p>';
     
    while ($donnees = $reponse->fetch())
     
    {
    ?>
     
     <table>
     
     
         <td>C'est le : <?php echo $donnees['Parcours'];?></td>
    	 <td>, on ira  : <?php echo $donnees['Ville_Destination'];?></td>
    	 <td>, Distance :<?php echo $donnees['Distance'];?> Km</td>
     
     
     
       </p>

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

Discussions similaires

  1. [Débutant] a partir dun numero de semaine et années
    Par ptikiki dans le forum VB.NET
    Réponses: 6
    Dernier message: 13/09/2011, 11h50
  2. Réponses: 4
    Dernier message: 31/10/2007, 15h11
  3. calcul de date à partir du numero de semaine
    Par @rkane dans le forum Access
    Réponses: 2
    Dernier message: 03/01/2007, 17h28
  4. [VB.Net] Obtenir une date à partir d'un numero de semaine
    Par tonysky dans le forum Windows Forms
    Réponses: 4
    Dernier message: 03/01/2007, 08h57

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