Veuillez vous connecter ou créer un compte pour suivre ce topic
Ce topic est suivi par: Foxxen, Paolacci
Ce topic a été résolu
Auteur Sujet: Tchat

Foxxen

Messages: 18

Hey bonjour ! Je suis en train de créer un tchat avec des petites commandes. Maintenant le problème c'est que j'utilise bootstrap pour afficher une fenêtre modale. Et vu que mon tchat s'actualise, quand j'ouvre une fenêtre modale, elle disparait quand le tchat s’actualise (tuto de PrimFx), mais le fond reste gris et on ne peut plus rien faire.

Pour tester ce que je vous dit : http://foxxen-krement-atomic.esy.es/chatminediversity/index.php

Il faut se login avec le pseudo : test
et le mot de passe est : 123

Voila, si jamais je vous mes mon code (attention c'est très désordonner et pas du tout optimiser, je le ferait plus tard)

Page index.php donc le tchat
<?php
session_start();

$bdd = new PDO('mysql:host=127.0.0.1;dbname=chat', 'root', '');
$bdd->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$bdd->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_OBJ);

        $req3 = $bdd->query('SELECT * FROM chatminediversity ORDER BY id DESC');
        ?>

        <h2>Tchat</h2>
        <div id="msgchat">
        <?php
        while($result2 = $req3->fetch()) {
        ?>
        <hr style="color:lightgray; background-color:lightgray; height:0.5px;">
        <?php if(isset($_SESSION['auth']) AND $_SESSION['auth']->rang == 2 OR isset($_SESSION['auth']) AND $_SESSION['auth']->rang == 3){ ?>
                <a href="#" type="button" class="linkmodal" data-toggle="modal" data-target="#<?php echo $result2->id; ?>">?</a><?php } ?>Pseudo : <?= $result2->pseudo ?> <br>
                Message :<?= $result2->message ?><br>
                <i><h6>Le <?= $result2->datepost ?></h6></i>

        <div class="modal fade" id="<?php echo $result2->id; ?>" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
                          <div class="modal-dialog" role="document">
                            <div class="modal-content">
                              <div class="modal-header">
                                <button type="button" class="close" data-dismiss="modal" onclick="modalboxhide1()" aria-label="Close"><span aria-hidden="true">×</span></button>
                                <script type="text/javascript"> function modalboxshow1(){document.getElementById('<?php echo $result2->id; ?>').setAttribute("class","modal fade"); document.getElementById('<?php echo $result2->id; ?>').removeAttribute("style"); }</script>
                                <h4 class="modal-title" id="myModalLabel">Actions Admin</h4>
                              </div>
                              <div class="modal-body">
                                <form method="POST">
                                    <input type="hidden" value="<?php echo $result2->id; ?>" name="suppmsgid">
                                    <center><button type="submit" name="suppmsg" class="buttonmodal">Supprimer le message</button></center>
                                </form>
                                <hr style="color:lightgray; background-color:lightgray; height:0.5px;">
                                <form method="POST">
                                    <input type="hidden" value="<?php echo $result2->pseudo; ?>" name="banuserip">
                                    <center><button type="submit" name="banuser" class="buttonmodal">Bannir l'utilisateur</button></center>
                                </form><br><br>
                              </div>
                            </div>
                          </div>
                        </div>
        <?php
        }
        ?>
        </div>
          <script type="text/javascript">
         setInterval('load_message()', 2000);
         function load_message(){
             $('#msgchat').load('load_message.php');
         }
        </script>
Page load_message.php

<?php
session_start();
$bdd = new PDO('mysql:host=mysql.hostinger.fr;dbname=u216436651_foxxe', 'u216436651_foxxe', 'pils76');
//$bdd = new PDO('mysql:host=127.0.0.1;dbname=chat', 'root', '');
$bdd->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$bdd->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_OBJ);
$req3 = $bdd->query('SELECT * FROM chatminediversity ORDER BY id DESC');
        while($result2 = $req3->fetch()) {
        ?>
        <hr style="color:lightgray; background-color:lightgray; height:0.5px;">
        <?php if(isset($_SESSION['auth']) AND $_SESSION['auth']->rang == 2 OR isset($_SESSION['auth']) AND $_SESSION['auth']->rang == 3){ ?>
                <a href="#" type="button" class="linkmodal" data-toggle="modal" data-target="#<?php echo $result2->id; ?>">?</a><?php } ?>Pseudo : <?= $result2->pseudo ?> <br>
                Message :<?= $result2->message ?><br>
                <i><h6>Le <?= $result2->datepost ?></h6></i>

        <div class="modal fade" id="<?php echo $result2->id; ?>" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
                          <div class="modal-dialog" role="document">
                            <div class="modal-content">
                              <div class="modal-header">
                                <button type="button" class="close" data-dismiss="modal" onclick="modalboxhide1()" aria-label="Close"><span aria-hidden="true">×</span></button>
                                <script type="text/javascript"> function modalboxshow1(){document.getElementById('<?php echo $result2->id; ?>').setAttribute("class","modal fade"); document.getElementById('<?php echo $result2->id; ?>').removeAttribute("style"); }</script>
                                <h4 class="modal-title" id="myModalLabel">Actions Admin</h4>
                              </div>
                              <div class="modal-body">
                                <form method="POST">
                                    <input type="hidden" value="<?php echo $result2->id; ?>" name="suppmsgid">
                                    <center><button type="submit" name="suppmsg" class="buttonmodal">Supprimer le message</button></center>
                                </form>
                                <hr style="color:lightgray; background-color:lightgray; height:0.5px;">
                                <form method="POST">
                                    <input type="hidden" value="<?php echo $result2->pseudo; ?>" name="banuserip">
                                    <center><button type="submit" name="banuser" class="buttonmodal">Bannir l'utilisateur</button></center>
                                </form><br><br>
                              </div>
                            </div>
                          </div>
                        </div>
        <?php
        }
        ?>

Voila, il y à beaucoup de lignes, mais merci à ceux qui m'aideront Grand sourire Merci d'avance pour votre réponse
Publicité

Wistaro

Messages: 76

J'ai testé ton site et je n'ai pas eu de problème... Je suis sur mobile aussi... 

Foxxen

Messages: 18

Ah ok, mais à tu appuyer sur la petite flèche à côter du pseudo d'une personne ?
 Car oui j'ai oublier de le préciser

Paolacci

Messages: 16

Je pense que tu ne dois pas mettre la fonction Admin dans load_message. Pas besoin de rafraîchir la fonction Admin. 
Sinon envoie mon ton skype que je t'aide si tu le souhaites. 

Foxxen

Messages: 18

Mon skype : pils1705, voila, bon je ne pourrait t'accepter que demain

Paolacci

Messages: 16

Je tes ajouté ! Sourire 

Foxxen

Messages: 18

salut, bah j'ai pas reçu ta demande

Paolacci

Messages: 16

Mon skype: benlobby

Foxxen

Messages: 18

C'est bon je t'ai accepter la demande à du mettre un peu de temps à arriver

Foxxen

Messages: 18

Bon, j'ai résolu mon problème de base, mais celui-ci en à engendrer un autre. Maintenant mes message s'affichent en double, car dans le load_message.php je doit fermer le while, alors que dans le fichier de base le while se ferme après l'affichage de la popup/modal

Donc j'ai essayer ce code

<div id="msgchat">
<?php
        while($result2 = $req3->fetch()) {
        ?>
        <hr style="color:lightgray; background-color:lightgray; height:0.5px;">
        <?php if(isset($_SESSION['auth']) AND $_SESSION['auth']->rang == 2 OR isset($_SESSION['auth']) AND $_SESSION['auth']->rang == 3){ ?>
                <a href="#" type="button" class="linkmodal" data-toggle="modal" data-target="#<?php echo $result2->id; ?>">?</a><?php } ?>Pseudo : <?= $result2->pseudo ?> <br>
                Message :<?= $result2->message ?><br>
                <i><h6>Le <?= $result2->datepost ?></h6></i>
         <?php
           }
          ?>
        </div>
         <?php
           while($result2 = $req3->fetch()) {
        ?>
        <div class="modal fade" id="<?php echo $result2->id; ?>" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
                          <div class="modal-dialog" role="document">
                            <div class="modal-content">
                              <div class="modal-header">
                                <button type="button" class="close" data-dismiss="modal" onclick="modalboxhide1()" aria-label="Close"><span aria-hidden="true">×</span></button>
                                <h4 class="modal-title" id="myModalLabel">Actions Admin</h4>
                              </div>
                              <div class="modal-body">
                                <form method="POST">
                                    <input type="hidden" value="<?php echo $result2->id; ?>" name="suppmsgid">
                                    <center><button type="submit" name="suppmsg" class="buttonmodal">Supprimer le message</button></center>
                                </form>
                                <hr style="color:lightgray; background-color:lightgray; height:0.5px;">
                                <form method="POST">
                                    <input type="hidden" value="<?php echo $result2->pseudo; ?>" name="banuserip">
                                    <center><button type="submit" name="banuser" class="buttonmodal">Bannir l'utilisateur</button></center>
                                </form><br><br>
                              </div>
                            </div>
                          </div>
                        </div>
                <?php
                    }
                    ?>
Au lieu de

<div id="msgchat">
<?php
        while($result2 = $req3->fetch()) {
        ?>
        <hr style="color:lightgray; background-color:lightgray; height:0.5px;">
        <?php if(isset($_SESSION['auth']) AND $_SESSION['auth']->rang == 2 OR isset($_SESSION['auth']) AND $_SESSION['auth']->rang == 3){ ?>
                <a href="#" type="button" class="linkmodal" data-toggle="modal" data-target="#<?php echo $result2->id; ?>">?</a><?php } ?>Pseudo : <?= $result2->pseudo ?> <br>
                Message :<?= $result2->message ?><br>
                <i><h6>Le <?= $result2->datepost ?></h6></i>

//Changements ici, je suis obliger d'avoir le while pour la popup, vu
qu'elle utilise l'id du message et le pseudo de celui qui l'a poster

        </div>
        <div class="modal fade" id="<?php echo $result2->id; ?>" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
                          <div class="modal-dialog" role="document">
                            <div class="modal-content">
                              <div class="modal-header">
                                <button type="button" class="close" data-dismiss="modal" onclick="modalboxhide1()" aria-label="Close"><span aria-hidden="true">×</span></button>
                                <h4 class="modal-title" id="myModalLabel">Actions Admin</h4>
                              </div>
                              <div class="modal-body">
                                <form method="POST">
                                    <input type="hidden" value="<?php echo $result2->id; ?>" name="suppmsgid">
                                    <center><button type="submit" name="suppmsg" class="buttonmodal">Supprimer le message</button></center>
                                </form>
                                <hr style="color:lightgray; background-color:lightgray; height:0.5px;">
                                <form method="POST">
                                    <input type="hidden" value="<?php echo $result2->pseudo; ?>" name="banuserip">
                                    <center><button type="submit" name="banuser" class="buttonmodal">Bannir l'utilisateur</button></center>
                                </form><br><br>
                              </div>
                            </div>
                          </div>
                        </div>
                <?php
                    }
                    ?>
Mais dans ce cas, la popup/modal ne s'ouvre plus, mais les messages ne s'affichent pas en double

Voila, quelqu'un aurait une idée ?? Merci


Veuillez vous connecter ou créer un compte pour poster une réponse