Partage
  • Partager sur Facebook
  • Partager sur Twitter

Résultats requête sql dans div même page html?

Une page, 3 div - résultats souhaités dans 3e div.

Sujet résolu
    7 avril 2014 à 22:12:10

    Bonjour, je fouille partout sur le net pour trouver une solution depuis 2 jours.

    Je suis débutant en création de site et c'est un projet perso mais qui me tient à coeur!

    Je bute (et rebute) sur l’affichage là ou je le souhaite des résultats de ma requête qui elle même se déroule bien.

    Le proto du site consiste :

    - une page unique avec 3 div

    - 1er div : explications

    - 2e div : saisie des critères via multiples boutons et multiples select... validation et submit via bouton + script javascript.. traitement de la requête par page php via déclaration : <form id='bibi' name="bibi" method="post" action="tri_01.php" target="bibi" class="form" >

    - le 3e div est purement réservé à l'affichage des résultats...

    Tout marche y compris l'affichage des résultats ... SAUF que cet affichage se fait toujours dans une nouvelle page (dans un div respectant la class CSS prévue) ...

    J'ai essayé différentes approches pour l'affichage :

    -1/ echo machin.machin...; pas de problème résultat sur nouvelle page!

    - 2/ je prévois le div dans pas page à l'intérieur du "form.. action" avant la balise fermante du form>> pas d'affichage !!

    - 3/ je défini le div dans la page php et là les résultats s'affichent dans un joli div respectant la class CSS mais sur une nouvelle page..

    - j'ai essayé de mettre en target le nom complet de ma page "nom.html" ... idem..

    Jamais d'affichage sur la page là ou je l'ai prévu! Grrrrr !

    J'ai dû rater quelque chose quelque part... un concept à côté duquel je suis passé ?

    Je suis convaincu que pour tous les experts présents sur ce forum il doit s'agir d'une question élémentaire.

    Pouvez-vous me confirmer qu'il est possible de faire afficher les résultats d'une requête sur la page appelante dans un div ou peut être iframe défini?

    Si oui SVP mettez moi sur la piste!

    Merci par avance.

    • Partager sur Facebook
    • Partager sur Twitter
      7 avril 2014 à 22:22:24

      Essaye de retirer ton "target" ;)

      Tiens nous au courant...

      -
      Edité par Nabeo 7 avril 2014 à 22:26:58

      • Partager sur Facebook
      • Partager sur Twitter

      Un +1 serait le bienvenu ou +2 ou +3 ou +4 ........

        7 avril 2014 à 22:32:20

        faudrait peut être utiliser ça , je ne suis pas sûr ceci dit, dis moi ce que tu en penses

        edit: peut être une iframe dans ta 3ème div, mébon, paraît que c'est pas bien les iframe

        -
        Edité par laurentus 7 avril 2014 à 22:46:46

        • Partager sur Facebook
        • Partager sur Twitter
          7 avril 2014 à 22:39:35

          Imaginons que tout ton code est sur la page index.php, pour ton form tu mettra :
          <form method="post" action="index.php">

          -
          Edité par Nabeo 7 avril 2014 à 22:40:37

          • Partager sur Facebook
          • Partager sur Twitter

          Un +1 serait le bienvenu ou +2 ou +3 ou +4 ........

            8 avril 2014 à 14:25:35

            Merci slaker pour ta réponse.

            2e modif suggérée (tout le code sur la page php en mettant "action" la même page).

            Là ça marche si j'enlève "target" sinon nouvelle onglet ..

            Donc sans le "target" j'obtiens une affichage complet de la page CàD : div1(explications) + div2(choix des critères) + div3 contenant les résultats... Mais ....à chaque fois c'est toute la page qui est régénérée dans le même onglet et donc les critères de choix sont effacés..

            C'est pas mal, en tout cas mieux (bien que je n'aime pas que le php et le html soient sur la même page de code, je ne sais pas quelles conséquence celà peut avoir, mais ça ne me semble pas clean.

            Il doit y avoir un moyen pour que seul le div réservé aux résultats soit rafraîchi par le résultat de la requête sql via php.

            1 ere modif suggérée en enlevant seulement le target de mon fichier d'origine et là je reste sur un affichage des résultats dans un nouvel onglet avec uniquement le div et sa class CSS.

            Je vais essayer de repartir de zéro avec un exemple le plus simple possible genre 2 div : 1 avec un choix type radio + 1 bouton submit sans javascript en essayant d'envoyer le résultat dans le div 2.

            Si tu as d'autres idée, elles sont bienvenues.

            Merci encore.

            • Partager sur Facebook
            • Partager sur Twitter
              8 avril 2014 à 15:47:40

              Merci pour ta réponse Laurentus..

              Avec un iframe dans mon 3e div en précisant pour src mon fichier php >>> idem résultats dans nouvel onglet..

              Si tu as d'autres idées elles sont bienvenues!

              Merci.

              • Partager sur Facebook
              • Partager sur Twitter
                8 avril 2014 à 16:33:24

                si tes critères de choix sont effacés, pourquoi ne pas les mettre en session et les reremplir lors de la regénération de page?
                • Partager sur Facebook
                • Partager sur Twitter
                  9 avril 2014 à 17:51:45

                  Bonjour - petit progrès pour mon problème d'affichage des résultats de ma requête SQL dans un div spécifique de ma pag.

                  Mes résultats s'affichent maintenant dans le div prévu à cet effet!

                  J'ai dû faire un "require" demon fichier html dans mon script php tel que :

                  <?php //

                  require "ProtoMo_02.html";

                  ?>

                  <div id="resultats" class="resultats">

                  <p> RESULTATS</P>

                  <?php

                  if (isset($_POST['bd']) && isset($_POST['criteres'])) {

                  $table =  $_POST["bd"];

                  $saisie =  $_POST["criteres"];

                  .....

                  Ça marche MAIS je n'aime pas cette solution... c'est un peu comme le chien qui se mord la queue il fini par tourner en rond!

                  De plus comme ma page est rafraîchie j'ai au passage perdu les critères saisis par l'utilisateur et à ce stade je ne sais pas encore comment les récupérer.

                  Si quelqu'un à une meilleur idée?

                  Merci!

                  • Partager sur Facebook
                  • Partager sur Twitter
                    9 avril 2014 à 18:11:17

                    me demande si tu ne peux pas utiliser ça sans passer par un formulaire (la fonction sera l'exécution d'une string passée dans la div 2 et activée par un bouton)

                    edit: hum, je penche plus pour sa copine http://www.php.net/manual/fr/function.call-user-func-array.php, ainsi tu pourras jeter des champs pour sélectionner la base de données, user et pass

                    -
                    Edité par laurentus 9 avril 2014 à 18:44:31

                    • Partager sur Facebook
                    • Partager sur Twitter
                      15 avril 2014 à 13:16:46

                      Bonjour et merci Laurentus et à ceux qui m'ont aidé.

                      J'ai finalement résolu mon problème d'affichage des résultats de mes requêtes en utilisant des fonctions ou méthodes AJAX telles que  XMLHttpRequest() et onreadystatechange.

                      Seul le div + tableau réservés aux résultats est rafraîchi, je ne perd donc pas les critères de choix et c'est rapide !

                      Encore merci!

                      :honte:

                      • Partager sur Facebook
                      • Partager sur Twitter

                      Résultats requête sql dans div même page html?

                      × 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