Partage
  • Partager sur Facebook
  • Partager sur Twitter

Problème de liaison bdd et site internet

    15 avril 2022 à 16:26:34

    Bonjour, 

    Mon problème c'est que j'ai crée un algo en python qui génère une base de donnée et je voudrai que chaque jour cette algo de python s'active et génère ma base de donnée, puis de mon site internet pouvoir faire des requêtes à celle-ci. J'ai donc déjà crée l'algorithme de python, le site internet (très épuré) ainsi que le javascript et le script PHP pour faire les requêtes à ma base de donnée. 

    Mais voici mon problème : je ne sais pas comment mettre tout ces éléments en ligne et les lier. Actuellement j'ai un serveur (que je peux utiliser) OVH à 3euros par mois environ. Est-ce suffisant pour pouvoir mettre du python qui s'active automatiquement en créant une base de donnée lier à mon site internet ? Si oui comment faire, et autrement avez vous des solutions à me proposer (en évitant un serveur trop cher ahah).

    Merci .

    • Partager sur Facebook
    • Partager sur Twitter
      15 avril 2022 à 16:50:46

      Bonjour,

      La première chose à faire est de contacter ton hébergeur pour valider avec lui si python (CGI ?) est disponible sur ton serveur (mutualisé je suppose).

      Ensuite tu dis que ton script Python génère ta base de données, de quel format s'agit-il ? Quel SGBD ?

      C'est bizarre de regénérer la base tous les jours ??? Peux-tu nous expliquer un peu plus en détail ton contexte ?

      • Partager sur Facebook
      • Partager sur Twitter
      Seul on va plus vite, ensemble on va plus loin ... A maîtriser : Conception BDD, MySQL, PHP/MySQL
        15 avril 2022 à 17:32:23

        Alors oui il prend python CGI en compte (je sais pas trop à quoi ca correspond).

        C'est une base de donnée mysql. Mon projet à pour but de dire à l'utilisateur quelles salles de ma fac sont libres (à un certain jour et heure) Le principe est que mon algorithme python fais du scrapping web pour récupérer les horaires de chaque salles, chaque jour, puis je crée une base de donnée avec pour chaque ligne une salle, un jour et 8 tranches d'horaires ou j'aurai des false et true (true quand il y a pas cours, et false si il y a cours).

        Ainsi je veux que chaque jour, elles se reconstruisent ou se mettent à jour même si ca pourrait être plus délicat. 

        Je sais pas si j'ai tout bien expliqué, et il y aura surement des modifications au fur et a mesure. Comme le fait d'avoir un algo qui crée la base de donnée sur 2 mois (tout les 1er du mois), un autre qui modifie tout les 2 semaines pour mettre à jour les horaires (sur les 2 semaines), et un dernier qui met à jour la table (pour le jour actuel).

        -
        Edité par LoïsCoursaut1 15 avril 2022 à 17:32:47

        • Partager sur Facebook
        • Partager sur Twitter
          16 avril 2022 à 11:37:28

          Ton serveur mutualisé semble proposer MySQL, PHP et Python CGI, donc aucun problème ...

          Ton script Python s'exécute, alimente la base MySQL, et ton script PHP l'interroge et l'affiche ... où bloques-tu ?

          Concernant la démarche générale, je pense qu'il est plus propre de concevoir ta base de données en amont (tables, contraintes, etc.).

          Ensuite pourquoi scrapper en Python là où PHP le ferait aussi bien ?

          Enfin je pense que si tu maîtrises suffisamment ta conception de BDD, avec les bonne contraintes tu pourras faire des INSERT INTO ... ON DUPLICATE KEY UPDATE.

          • Partager sur Facebook
          • Partager sur Twitter
          Seul on va plus vite, ensemble on va plus loin ... A maîtriser : Conception BDD, MySQL, PHP/MySQL
            16 avril 2022 à 16:31:32

            Enfaite je bloque dans comment mettre tout ces éléments en ligne et les faire "connecter", parce que mon script python ne s'exécute pas automatiquement (je ne sais pas comment faire pour faire en sorte qu'il s'active une fois tout les jours vers 2h du matin par exemple). Je ne sais pas également comment je relie ma base de donnée (que je crée) à mon script php, parce que quand je le faisais, j'avais de base ma bdd mysql avec le port 3306, mon nom d'utilisateur et mon mot de passe. Mais comment je peux me connecter à une base de donnée en ligne. Je pense que je m'exprime mal, mais sur mon ordinateur j'ai mysql pour ma base de donnée (que je crée au préalable pour la connecté à mon script python) mais je me connecte à quel base de donnée si je mets mon script en ligne ? J'espère que vous avez compris mes principaux problèmes.

            -
            Edité par LoïsCoursaut1 16 avril 2022 à 16:33:29

            • Partager sur Facebook
            • Partager sur Twitter
              19 avril 2022 à 10:08:21

              Si tu veux tout passer en ligne, il faut que ton serveur MySQL (avec ta base de données), que ton serveur PHP et ta console Python soient accessibles sur ton serveur mutualisé.

              Première chose donc, faire un dump de ta base MySQL locale et l'importer dans ta base distante (sur ton serveur mutualisé).

              Ensuite déplacer ton script PHP sur le serveur distant en modifiant les identifiants de connexion à la base de données pour qu'il pointe vers la base MySQL du serveur mutualisé.

              Après, tu déplaces ton script Python également sur le serveur mutualisé.

              Enfin, tu crées une tâches CRON (si serveur linux, le plus fréquent) ou tasks scheduler (si serveur Windows, très rare), qui exécute ton script Python à intervalles régulier (quotidiennement dans ton besoin).

              • Partager sur Facebook
              • Partager sur Twitter
              Seul on va plus vite, ensemble on va plus loin ... A maîtriser : Conception BDD, MySQL, PHP/MySQL

              Problème de liaison bdd et site internet

              × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
              × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
              • Editeur
              • Markdown