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

PHP & Base de données Discussion :

Créer programme annuel des cours avec mysql


Sujet :

PHP & Base de données

  1. #1
    Membre régulier
    Inscrit en
    Septembre 2006
    Messages
    179
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 179
    Points : 83
    Points
    83
    Par défaut Créer programme annuel des cours avec mysql
    Bonjours tous le monde,
    Voila mon besoin est le suivant, je veux créer un programme annuel des cours pour une ecole par exemple, disant pendant toute l'année 2017 chaque lundi on a un cours de math a 8h a la salle 1, cours de francais a la salle 2 etc ... apres on va utiliser ce programme quand la date arrive.
    Dans mysql j'ai créer la table mais j'arrive pas a trouver un moyens pour la remplir avec php et mysql, comment dire a php ou mysql de verifier si une date correspond a lundi et d'inserer les informations qui y correspond.
    Merci a vous d'avance et bonne journèe

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $objDate = new Datetime(); // aujourd'hui
     
    if ($objDate->format('N') == 1) {
       echo 'lundi';
    }
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre régulier
    Inscrit en
    Septembre 2006
    Messages
    179
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 179
    Points : 83
    Points
    83
    Par défaut
    Merci Mr Sabotage pour votre reponse,
    Au fait la ou je bloque c'est comment inserer le programme des date futur, par exemple du 01/06/2017 au 31/12/2017 tout en verifiant si c'est lundi ou autre jour.
    Merci

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Ta planification n'est pas annuelle ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre régulier
    Inscrit en
    Septembre 2006
    Messages
    179
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 179
    Points : 83
    Points
    83
    Par défaut
    Si si elle est annuelle

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Donc ton insertion c'est juste :
    lundi;08:00;maths;salle 1
    lundi;08:00;français;salle 2

    Il n'y a pas de date réelle à gérer.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  7. #7
    Membre régulier
    Inscrit en
    Septembre 2006
    Messages
    179
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 179
    Points : 83
    Points
    83
    Par défaut
    Je crois que j'ai pas bien expliquer mon besoin
    Exemple de formulaire :
    *** Periode de : textDateDebut .... au : textDateFin
    ou Annee entiere,
    *** Jour : textJour
    *** Matiere : textMatiere
    *** Salle : textSalle
    *** Professeur : textProfesseur

    Je veux parcourir les dates, et quand la date correspond a un lundi, je fais jne Insert :
    Insert into Cours ( Salle, matiere, prof, jour, heure) Values ( textSalle, textMatiere, textProf, ????????, ??????)

    Voila j'espere que j'ai bien exprimer ce que je veux.
    Merci a vous

    Il me semble que je dois créer une table de dates qui contient tous les jours de l'année, il me reste juste a trouver le moyen pour remplir cette table.

  8. #8
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Pas besoin de pré-remplir une table, il suffit de parcourir tes dates :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <?php
    $annee = 2017;
    $day = 'monday';
    $date = new Datetime($annee . '-01 ' . $monday);
     
    $sth = $pdo->prepare('INSERT INTO Cours ( Salle, matiere, prof, jour, heure) Values (?, ?, ? ,? ,?)';
     
    while ($date->format('Y') == $annee) {
        echo $date->format('Y-m-d') . '<br/>';
        $sth->execute(array($salle, $matiere, $prof, $date->format('Y-m-d'), $heure);
        $date->modify('+1 week');
    }
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  9. #9
    Membre régulier
    Inscrit en
    Septembre 2006
    Messages
    179
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 179
    Points : 83
    Points
    83
    Par défaut
    Merci Sabotage je vais tester ça demain et vous repondre

  10. #10
    Membre averti
    Homme Profil pro
    Autres
    Inscrit en
    Mai 2017
    Messages
    279
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Autres

    Informations forums :
    Inscription : Mai 2017
    Messages : 279
    Points : 421
    Points
    421
    Par défaut
    Supposons que l'on planifie un cours tous les Lundi pour l'année 2017 à une heure précise (à remplir dans le formulaire). Voici le code pour l'insertion dans ta base de données. ce pendant, il ne gère pas les jours non ouvrables. Si tu les gérer, à toi de les intégrer dans le code ci-dessous.

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    $annee = 2017;
    $date = new Datetime($annee . '-01 ' . '-01');
     
    $sth = $pdo->prepare('INSERT INTO Cours ( Salle, matiere, prof, jour, heure) Values (?, ?, ? ,? ,?)');
     
    while ($date->format('Y') == $annee) {
        if ($date->format('N') == 1) {
            echo 'Lundi ' . $date->format('Y-m-d') . '<br/>'; // Pour un test d'affichage. Passer cette ligne en commentaire ou suppermer.
            $sth->execute(array($salle, $matiere, $prof, $date->format('Y-m-d'), $heure));
            $date->modify('+1 week');
        } else {
            $date->modify('+1 day');
        }
    }
    L’appétit vient en mangeant.
    Pourquoi compliquer quand on peut faire plus simple?
    Une réponse vous a été utile? pensez à
    Vous avez eu la réponse à votre question? marquez votre discussion
    Faites un tour aux FAQs et aux tutoriels et cours.

  11. #11
    Membre régulier
    Inscrit en
    Septembre 2006
    Messages
    179
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 179
    Points : 83
    Points
    83
    Par défaut
    Merci chers developpeurs c'est exactement ce dont j'ai besoin.
    Juste une aide de plus SVP, comment faire pour inserer le planning d'une periode au lieu d'une année entière, par exemple du 15 Mzrs au 16 juin 2017 ?
    Merci

  12. #12
    Membre averti
    Homme Profil pro
    Autres
    Inscrit en
    Mai 2017
    Messages
    279
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Autres

    Informations forums :
    Inscription : Mai 2017
    Messages : 279
    Points : 421
    Points
    421
    Par défaut
    Voici le code que tu veux:
    Code php : 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
    21
    22
    23
    24
     
    $debut = '2017-03-15'; // A définir (variable $_POST de date de début du formulaire;
    $fin = '2017-06-16'; // A définir (variable $_POST de date de fin du formulaire;
     
     
    $debut = new DateTime($debut);
    $fin = new DateTime($fin);
     
     
    $date = $debut; // Afin de tester si une date est dans la plage souhaité($debut ... $fin)
     
     
    $sth = $pdo->prepare('INSERT INTO Cours ( Salle, matiere, prof, jour, heure) Values (?, ?, ? ,? ,?)');
     
     
    while ($date->format('Y-m-d') < $fin->format('Y-m-d')) {
        if ($date->format('N') == 1) {
            echo 'Lundi ' . $date->format('Y-m-d') . '<br/>'; // Pour un test d'affichage. Passer cette ligne en commentaire ou suppermer.
            $sth->execute(array($salle, $matiere, $prof, $date->format('Y-m-d'), $heure));
            $date->modify('+1 week');
        } else {
            $date->modify('+1 day');
        }
    }
    A toi de jouer.
    L’appétit vient en mangeant.
    Pourquoi compliquer quand on peut faire plus simple?
    Une réponse vous a été utile? pensez à
    Vous avez eu la réponse à votre question? marquez votre discussion
    Faites un tour aux FAQs et aux tutoriels et cours.

  13. #13
    Membre régulier
    Inscrit en
    Septembre 2006
    Messages
    179
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 179
    Points : 83
    Points
    83
    Par défaut
    Merci Nazoïde ça marche
    J'ai pas tout compris vu que j'ai pas encore fait de l'orienter objet, mais je l'ai fait de maniere procedurale vu que c'est bien expliquer de votre part, et ça me donne envis de me pencher sur l'OO.
    Merci bien a vous pour votre aide ^^

  14. #14
    Membre averti
    Homme Profil pro
    Autres
    Inscrit en
    Mai 2017
    Messages
    279
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Autres

    Informations forums :
    Inscription : Mai 2017
    Messages : 279
    Points : 421
    Points
    421
    Par défaut
    Passes la discussion à résolue STP.
    L’appétit vient en mangeant.
    Pourquoi compliquer quand on peut faire plus simple?
    Une réponse vous a été utile? pensez à
    Vous avez eu la réponse à votre question? marquez votre discussion
    Faites un tour aux FAQs et aux tutoriels et cours.

  15. #15
    Membre régulier
    Inscrit en
    Septembre 2006
    Messages
    179
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 179
    Points : 83
    Points
    83
    Par défaut
    J'ai chercher ce bouton resolu longtemps ce matin je l'ai pas trouver, peut etre qu'il n'est pas disponible en version mobile ? :p Je me connecte juste par tel en ce moment.
    mais je le ferais dès que c'est possible ^^

    Merci beaucoup pour l'aide et aussi pour les cours et tutoriels pour bien apprendre PHP !

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

Discussions similaires

  1. Utilisation des OLEDB avec MySQL
    Par popsmelove dans le forum Administration
    Réponses: 0
    Dernier message: 11/07/2008, 09h31
  2. Entrer automatiquement des données Avec MySQL, JS et php
    Par HWICE dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 11/04/2008, 16h40
  3. [MySQL] conseils pour gérer des images avec mysql
    Par briiice dans le forum Administration
    Réponses: 9
    Dernier message: 04/01/2006, 09h52
  4. créer une table des matières avec fop
    Par gedeon555 dans le forum XSL/XSLT/XPATH
    Réponses: 5
    Dernier message: 05/07/2005, 15h54

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