Partage
  • Partager sur Facebook
  • Partager sur Twitter

selection en fontion de critère dans la base

    1 avril 2006 à 14:36:43

    Bonjour à tous.

    Je suis en train de réaliser une galerie photos, et je voudrais savoir comment faire pour que les visiteurs puissent choisir de n'afficher que les images concernant leur département s'il désirent.

    Faut il faire un système de menu déroulent avec tous les nom de départements ?
    Faut il creer une page spéciale pour chaque département avec la requete sql unique à ce département ?

    :euh:
    • Partager sur Facebook
    • Partager sur Twitter
      2 avril 2006 à 16:10:22

      Euh bah la gestion de ton site c'est toi qui vois.
      Pour les selections en fonction de criteres c'est à la clause WHERE qu'il faut que tu te réfere ;)
      Si possible fais un tour sur la doc MySQL ;)
      • Partager sur Facebook
      • Partager sur Twitter
        2 avril 2006 à 16:14:07

        Ta plusieur solution; sois tu fais un select multiple avec tous les départements, soit tu fais un champs (input).

        et puis la requete c'est la même toute maniere à quelques chose pret.

        SELECT * from latable WHERE departement [..]
        • Partager sur Facebook
        • Partager sur Twitter
          2 avril 2006 à 16:35:20

          J'aimerais faire un formulaire déroulent comme ceci

          <FORM>
          <SELECT ONCHANGE="location = this.options[this.selectedIndex].value;">
          <OPTION VALUE="page1.php">ain
          <OPTION VALUE="page2.php">haute garonne
          <OPTION VALUE="page3.php">Var</SELECT>
          </FORM>


          On m'a parlé de valeur GET, mais je ne comprend pas grand chose
          • Partager sur Facebook
          • Partager sur Twitter
            2 avril 2006 à 16:39:23

            <FORM methof="get" action="page_affichage.php">
            <SELECT name="departement" ONCHANGE="location = this.options[this.selectedIndex].value;">
            <OPTION VALUE="ain">ain
            <OPTION VALUE="haute garrone">haute garonne
            <OPTION VALUE="var">Var</SELECT>
            </FORM>

            je connai pas trop le javascript donc je sais pas ce que ca fais quand on change mais sur ta page de traitment pour afficher les iamges de la region tu fait ca :
            mysql_query("SELECT * FROM table WHERE departement=".$_GET['departement']." ");
            et voila ;)
            • Partager sur Facebook
            • Partager sur Twitter
              2 avril 2006 à 16:49:38

              <form action="lapagedetraitement.php" method="post">
              <select name="departement">
              <option value="77">Seine Et Marne
              <option value="91">Essone
              <option value="95">Val d'oise
              </select>
              </form>
              ensuite tu recupere la valeur de ton select

              $sql = 'SELECT photo FROM latable WHERE departement="'.$_POST['departement'].'"';
              mysql_query($sql);


              $_GET ne sert a rien ici

              Tien si tu veux tester :


              <?
              if(isset($_POST['departement']))
              {
              echo $_POST['departement'];
              }
              else {
              echo "Faites votre choix";
              }
              ?>

              <form action="test.php" method="post">
              <select name="departement">
              <option value="77">Seine Et Marne
              <option value="91">Essone
              <option value="95">Val d'oise
              </select>
              <input type="submit">
              </form>
               


              donc la ca fonctionne comme ceci donc avec la requete c'est pareil pas besoin de $_GET
              • Partager sur Facebook
              • Partager sur Twitter
                2 avril 2006 à 17:35:41

                J'ai fait ca en reprenant ton exemple.

                <?php
                mysql_connect('', '', '')// Connexion à MySQL
                mysql_select_db(""); // Sélection de la base coursphp

                $sql = 'SELECT image FROM webcams WHERE departement="'.$_POST['departement'].'"';


                // On fait une boucle pour lister tout ce que contient la table :

                mysql_query($sql);
                {
                ?>


                <?
                if(isset($_POST['departement']))
                {
                echo $_POST['departement'];
                }
                else {
                echo "Faites votre choix";
                }
                ?>

                <form action="tt.php" method="post">
                <select name="departement">
                <option value="ain">Seine Et Marne
                <option value="91">Essone
                <option value="95">Val d'oise
                </select>
                <input type="submit">
                </form>

                 

                 <?php
                }

                mysql_close(); // Déconnexion de MySQL
                ?>   


                Voilà ma table sql dans laquelle j'ai déjà mis une valeur pour faire le test

                CREATE TABLE `webcams` (
                  `departement` text collate latin1_german1_ci NOT NULL,
                  `image` text collate latin1_german1_ci NOT NULL
                ) ENGINE=MyISAM DEFAULT CHARACTER SET utf8 COLLATE utf8_bin COLLATE=latin1_german1_ci;

                --
                -- Contenu de la table `webcams`
                --

                INSERT INTO `webcams` VALUES ('ain', 'image1');


                Mon souci est que lorsque je sélectionne Seine et Marne, il me marque Ain en dessus, alors qu'il faudrais qu'il me marque ce qu'il y a dans la table soit: image1

                • Partager sur Facebook
                • Partager sur Twitter
                  2 avril 2006 à 19:27:03

                  à la place de echo $_POST['departement']; tu met ta requete;
                  car la elle n'est pas prise en compte.

                  • Partager sur Facebook
                  • Partager sur Twitter
                    2 avril 2006 à 19:40:49

                    Bon bein sans succés

                    <?
                    if(isset($_POST['departement']))
                    {
                     echo $data['image'] ;
                    }
                    else {
                    echo "Faites votre choix";
                    }
                    ?>
                    • Partager sur Facebook
                    • Partager sur Twitter
                      2 avril 2006 à 19:59:05

                      La requete ;)

                      <?
                      if(isset($_POST['departement']))
                      {
                      $sql='SELECT image FROM webcams WHERE departement="'.$_POST['departement'].'"';
                      $req=mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
                      $data=mysql_fetch_array($req);

                      echo $data['image'];

                      }
                      else {
                      echo "Faites votre choix";
                      }
                      ?>
                      • Partager sur Facebook
                      • Partager sur Twitter
                        2 avril 2006 à 20:14:07

                        Merci à toi, ca marche impecc.


                        Bonne soirée ;)
                        • Partager sur Facebook
                        • Partager sur Twitter
                          4 avril 2006 à 14:05:45

                          Je voudrais savoir s'il est possible à la place d'avoir un système par menu déroulant qui m'affiche l'image, est ce qu'il est possible d'afficher les départements les uns à coté des autres et que lorsque l'on clique sur le départements souhaiter ca affiche l'image ?

                          rappel de ce que j'ai actuellement http://www.meteo-world.com/tt.php
                          • Partager sur Facebook
                          • Partager sur Twitter

                          selection en fontion de critère dans la base

                          × 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