Partage
  • Partager sur Facebook
  • Partager sur Twitter

Sorte de menu déroulant

je ne sais pas comment ça s'apelle ^^

    15 janvier 2006 à 14:52:14

    Salut
    je cherche à faire une sorte de menu déroulant, mais je ne sais pas comment ça s'apelle exactement:
    vous pouvez voir un exemple sur la page d'accueil de ce site:
    <lien url="http://www.graph-mania.info"></lien>
    Tout en bas, il y a une shoutbox (mini-tchat) qui se trouve dans un "menu déroulant".
    Je ne sais pas comment le faire.

    Merci d'avance
    • Partager sur Facebook
    • Partager sur Twitter
      15 janvier 2006 à 16:24:21

      merci beaucoup!
      J'avais lu les cours (il y a logntemps ^^)
      et je cherchais ma réponse dans les formulaires.

      Enfin, merci beaucoup! :)

      EDIT: arf, en fait je n'arrive pas à faire ce que je veux...
      J'aimerai mettre une barre de défilement pour tous les messages de mon tchat (comme sur le site indiqué en-dessus).

      Voici mon code:
      <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
      <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
          <head>
              <title>Mini-chat</title>
              <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
          </head>
          <style type="text/css">
          form
          {
          text-align:center;
          }
          input
          {
          font-size: medium;
          color: orange;
          font-weight: bold;
          }
          .messages
          {
          color: orange;
          }
           .messages2
          {
          color: grey;
          }
          h2
          {
          color: #c04000;
           font-weight: bold;
           text-decoration: underline;
          }   
          .heure
          {
          font-size: small;
          }
         
          </style>
          <body>


      <?php
      $timestamp = time();

      if (isset($_POST['pseudo']) AND isset($_POST['message'])) // Si les variables existent
      {
          if ($_POST['pseudo'] != NULL AND $_POST['message'] != NULL) // Si on a quelque chose à enregistrer
          {
              // D'abord, on se connecte à MySQL
              mysql_connect("localhost", "root", "");
              mysql_select_db("test1_sdz");

              // On utilise la fonction PHP htmlentities pour éviter d'enregistrer du code HTML dans la table
              $message = htmlentities ($_POST['message']);
              $pseudo = htmlentities ($_POST['pseudo']);

              // Ensuite on enregistre le message
              mysql_query("INSERT INTO minichat VALUES('', '".$pseudo."', '".$message."', '".$timestamp."')");

              // On se déconnecte de MySQL
              mysql_close();
          }
      }


      // Que l'on ait enregistré des données ou pas...
      // On affiche le formulaire puis les 10 derniers messages

      // Tout d'abord le formulaire :
      ?>



      <h2  align="center">La Shoutbox</h2>

      <?php

      // Maintenant on doit récupérer les 10 dernières entrées de la table
      // On se connecte d'abord à MySQL :
      mysql_connect("localhost", "root", "");
      mysql_select_db("test1_sdz");

      // On utilise la requête suivante pour récupérer les 10 derniers messages :
      $reponse = mysql_query("SELECT * FROM minichat ORDER BY ID DESC LIMIT 0,15");

      // On se déconnecte de MySQL
      mysql_close();

      // Puis on fait une boucle pour afficher tous les résultats :

      while ($donnees = mysql_fetch_array($reponse) )
      {
      ?>

      <p ><span class="messages"><strong><?php echo $donnees['pseudo']; ?></strong></span> <span class="heure">(le<?php echo date('d\/m', $timestamp); ?> à <?php echo date('H\:i', $timestamp); ?>)</span>:<br/> <span class="messages2"><?php echo $donnees['message']; ?></span></p>


      <?php
      }
      // Fin de la boucle, le script est terminé !
      ?>


      <form action="minichat.php" method="post">

      <p>

      <strong>Pseudo :</strong> <br />

      <input type="text" name="pseudo"

      <?
      if (isset($_POST['pseudo']) )
      {
      echo 'value="' .$_POST['pseudo']. '"';
      }
      ?>

      />


      <br /><br />
      <strong>Message :</strong> <br />
      <textarea name="message" cols="40" rows="4" tabindex="80"></textarea><br /><br />
      <input type="submit" value="Shoot" />
      </p>

      </form>

          </body>
      </html>


      Alors je dois faire comment pour que tous les messages soient dans une case avec une barre de défilement?

      Merci d'avance
      • Partager sur Facebook
      • Partager sur Twitter
        15 janvier 2006 à 19:19:24

        <div id="boite">

        <?
        while ($donnees = mysql_fetch_array($reponse) )
        {
        ?>


        <p ><span class="messages"><strong><?php echo $donnees['pseudo']; ?></strong></span> <span class="heure">(le<?php echo date('d\/m', $timestamp); ?> à <?php echo date('H\:i', $timestamp); ?>)</span>:<br/> <span class="messages2"><?php echo $donnees['message']; ?></span></p>


        <?php
        }
        ?>


        </div>


        #boite
        {
        width: 400px; height: 300px; overflow: auto;}


        Suffit de mettre le tout dans un bloc en overflow: auto; avec bien sûr une hauteur définie.
        • Partager sur Facebook
        • Partager sur Twitter
          15 janvier 2006 à 21:06:49

          Ok, merci beaucoup, mais le problème c'est que la "boite" ce met à gauche et pas au milieu!
          J'ai essayé de mettre "align: center" mais ça marche pas!

          Merci beaucoup!
          • Partager sur Facebook
          • Partager sur Twitter
            15 janvier 2006 à 21:08:59

            C'est une balise block, il faut donc utiliser margin: auto;

            T'as toujours pas lu les cours toi :lol:
            • Partager sur Facebook
            • Partager sur Twitter
              16 janvier 2006 à 10:35:53

              Mais...
              C'est ce que j'ai fait regarde:

              div {
                 width: 600px;
                 height: 180px;
                 text-align: justify;
                 align: center;
              }

              .barres_defilement{
                 overflow: auto;
                 
              }


              <div class="barres_defilement" align="center">
              <?php
              while ($donnees = mysql_fetch_array($reponse) )
              {
              ?>

              <span class="messages"><strong><?php echo $donnees['pseudo']; ?></strong></span> <span class="heure">[le<?php echo date('d\/m', $timestamp); ?> à <?php echo date('H\:i', $timestamp); ?>]</span>:<br/> <span class="messages2"><?php echo $donnees['message']; ?><br/></span>
              <hr>

              <?php
              }
              // Fin de la boucle, le script est terminé !
              ?>
              </div>
              • Partager sur Facebook
              • Partager sur Twitter
                16 janvier 2006 à 19:23:08

                Non mais...

                Tu te fiches de moi ? o_O


                Où as-tu fais ce que je t'ai indiqué ? En l'occurence le margin: auto; ?

                PS: align: center est inutile.

                EDIT : Hum... si tu le dis :lol:
                • Partager sur Facebook
                • Partager sur Twitter
                  16 janvier 2006 à 20:05:32

                  :euh: Désolé...
                  Non, je me fiche pas de toi... J'ai cru que tu disais overflow: auto;.
                  Faut que je me réveille ^^

                  Vraiment désolé
                  Merci, ça marche :D
                  • Partager sur Facebook
                  • Partager sur Twitter

                  Sorte de menu déroulant

                  × 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