Partage
  • Partager sur Facebook
  • Partager sur Twitter

Chat box like FaceBook

Volet de chat dynamique

    18 mars 2020 à 9:59:57

    Bonjour à tous,

    Alors premièrement je ne savais pas trop ou mettre ce sujet étant donné que je travail avec PHP, HTML, CCS, JavaScript, JQuerry et MySQL...

    Difficile de trouver le bon domaine pour cette question/projet.

    Mon projet : Voila je voudrais faire un système de chat sur un site internet, mais pas n'importe comment.

    Je m'explique. Je cherche à faire un système de chat similaire à Facebook (une mini "popup" sur le côté) qui serait disponible sur chaque page de mon site. Peut importe la page sur laquelle on va, je voudrais que cette mini fenêtre soit visible et mise à jour en temps réel.

    J'ai déjà un bon début de l'interface du site (Accueil et 2/3 pages) avec un espace membre ultra sécurisé et tout ça. On ne peut absolument rien faire sur le site, temps qu'on est pas connecté (Ce qui veut dire que le chat ne sera pas accessible (ni lecture, ni écriture)).

    Le but serais d'utiliser le pseudo de l'utilisateur connecté (stocker dans les variables de session) et de l'introduire dans cette fenêtre de chat.

    Pour commencer toute cette usine à GAZ, je penses faire la fameuse fenêtre (et afficher des données lambda dedans pour l'instant).

    Ensuite la mise en place d'un chat (MP (Privé) et MG (Général)).

    Enfin mise en place de quelques options si c'est faisable (Mute, notification bureau (déjà une idée la dessus)).

    Pour la partie chat je me pose encore des questions sur : "Comment faire pour que les données ne soit pas lisible dans ma BDD ?" mais chaque chose en son temps.

    Merci d'avance pour votre aide.

    • Partager sur Facebook
    • Partager sur Twitter
      19 mars 2020 à 6:14:37

      Bonjour.

      Si tu veux faire du temps réel, il te faudra utiliser les WebSockets, soit via NodeJS, ou PHP.

      Par contre je ne comprends pas ton:

      • Comment faire pour que les données ne soit pas lisible dans ma BDD ?

      Qu veux-tu dire par là ?

      • Partager sur Facebook
      • Partager sur Twitter

      Face a quelqu'un pour qui l'on n'éprouve que de l'aversion et du mépris, les yeux d'un homme deviennent extrêmement froids et cruels.

        19 mars 2020 à 10:14:29

        Bonjour,

        Je me suis mal exprimer sur le point "pas lisible". J'aurais du dire cryptées. Pour le fonctionnement il faut évidemment passer par BDD mais je ne veux pas qu'on puissent "espionner" les conversations via les données de la BDD (je ne suis pas le seul à pouvoir accéder à ces données).

        Pour NodeJS, pourquoi pas mais je ne connait pas du tout. J'imagine que c'est possible avec des petits scripts JQuery ou Javascript. Mais comme j'ai dit, le truc c'est d'abord de faire la fameuse "fenêtre" dans un premier temps (avant de ce creuser la tête pour le reste =P).

        A la limite si on peut mettre un code différent de la page principale, un refresh tout les x secondes de cette boite permettra de faire du "temps réel" et tout ça en PHP/HTML (sauf le refresh évidemment).

        Ce que je vois enfaite c'est une sorte de mini page web dans une autre (PHPception =D) la boite doit juste être dispo, peut importe la page sur laquelle on va (j'ouvre la boite sur l'accueil, je clique sur "espace membre", la boite est toujours là).

        -
        Edité par Alextronikk 19 mars 2020 à 10:16:46

        • Partager sur Facebook
        • Partager sur Twitter
          19 mars 2020 à 11:34:17

          Tu peux en effet passer par du simple JavaScript, mais dans ce cas là, ce n'est plus du temps réel, mais plutôt du pseudo temps réel, car dans ce cas là ce n'est pas lorsque du changement est détecté, mais un simple rechargement des données avec une intervalle de durée.

          Pour ce que tu dis dans le dernier point, tu as deux solutions, soit mettre le code HTML et le code JavaScript dans un fichier, puis inclure ce fichier sur chacune de tes pages, ou alors tu passes par une navigation ajax pour toutes tes pages, par conséquent lorsqu'un lien est cliqué, tu annules le comportement par défaut du navigateur, soit de charger la nouvelle page, puis via Ajax tu fais la requête HTTP puis tu inclues le retour (soit du HTML) dans un genre de container dans lequel seul le code HTML de la page spécifique y sera injecté.

          • Partager sur Facebook
          • Partager sur Twitter

          Face a quelqu'un pour qui l'on n'éprouve que de l'aversion et du mépris, les yeux d'un homme deviennent extrêmement froids et cruels.

            6 avril 2020 à 10:00:17

            Enfaite je voyais plutôt un truc en HTML/CSS dans un premier temps.

            Ce qu'il me faut déjà c'est faire cette fameuse fenêtre mais je ne sais pas comment m'y prendre.

            L'idée c'est d'avoir un mini "fenêtre" qui s'ouvre et ce ferme et qui décale le texte de la page principale le cas échéant.

            Un truc like this:

            • Partager sur Facebook
            • Partager sur Twitter
              14 avril 2020 à 10:29:30

              Quelqu'un pour m'aider à créer cette fenêtre ?

              Merci.

              • Partager sur Facebook
              • Partager sur Twitter
                14 avril 2020 à 10:40:08

                Bonjour,

                Il me semble que ton problème de fenêtre n'a rien à voir avec du php. C'est plutôt un problème html, ccs voire javascript donc sans doute changer de forum.

                Du moins c'est ainsi que je l'ai résolu même si moi j'utilise plutôt des éléments toast de bootstrap qui se décale au fur et à mesure de la discussion.

                https://getbootstrap.com/docs/4.4/components/toasts/

                Ayant mis en oeuvre un chat privé sur mon site, le problème de fond d'un chat n'est pas dans l'affichage d'une fenêtre mais dans la gestion des échanges avec toutes les possibilités de statut, de privatisation, etc.

                Quand à utiliser une page qui se rafraîchit périodique c'est tellement obsolète comme solution ... :(

                A+

                -
                Edité par monkey3d 14 avril 2020 à 10:40:40

                • Partager sur Facebook
                • Partager sur Twitter

                Chat box like FaceBook

                × 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