Page dynamique

GASTON22 Messages postés 229 Statut Membre -  
GASTON22 Messages postés 229 Statut Membre -
Bonjour chers amis,

j'ai une page qui contient des boutons qui désignent des pays...
J'ai une autre page qui contient le descriptif du pays (elle est la meme pour les 24 pays que je traite)
j'ai pensé a stocker les détails des pays dans une table de ma base de donnée puis quand je click sur un bouton il m'affiche la page du descriptif du pays correspondant.

MAIS je sais pas comment faire ca... stocker dans la base de donnée c'est pas compliqué.. mais récupération des données avec le test sur les boutons: IF(bouton1) ... if else (bouton2) ...
Ca je sais pas faire..

Vous pouvez m'aider SVP.

2 réponses

  1. jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   4 831
     
    Bonjour,

    une page qui contient des boutons

    Des boutons de quel type ?
    Tu les as mis dans un FORM ou bien tu tu comptes utiliser le Javascript pour appeller ta seconde page (celle qui affichera le descriptif) ?

    mais récupération des données avec le test sur les boutons: IF(bouton1) ... if else (bouton2) ...

    Tu peux utillser les variables GET pour traiter cela...

    Par exemple... lorsque tu cliques sur le bouton FRANCE (dont l' ID dans ta BDD est le 1 ) ... ça t'envoie sur ta seconde page en mettant une variable dans l'URL qui indique quel bouton a été cliqué....

     http://monsite.fr/descriptif_pays.php?choix_pays=1
    


    Dans la descriptif_pays.php .. tu récupère ce choix via :
    
    <?php
    $choix_pays = isset($_GET['choix_pays'])?$_GET['choix_pays']:NULL;
    ?>
    


    Puis tu requêtes dans ta BDD pour récupérer les infos concernant ce pays :

    
    // Connexion à la BDD
    require_once('ton_fichier_de_connexion_a_ta_BDD.php');
    
    
    // création de la requête:
    $sql = "SELECT descriptif FROM tatable WHERE id='$choix_pays'";
    
    //selon que tu ais utilisé PDO / Mysqli ou l'ancienne extension Mysql....
    //execution de ta requête ...
    //......par exemple avec PDO
    // On envois la requète
    $resultat= $pdo->query($sql);
    
    // en dessous.. tu codes l'affichage du résultat
    
    


    Voici également un petit tuto sur la PDO :
    http://studio.jacksay.com/tutoriaux/php/connection-mysql-avec-pdo

    Perso .. j'utilise cette extension là.... ( mysql étant obsolète .. et la préférant à mysqli)

    Voila...
    y'a plus qu'à....
    0
    1. GASTON22 Messages postés 229 Statut Membre 1
       
      <li class="items" style="background-image:url('https://pbs.twimg.com/profile_images/1298643948/FranceFlag_svg.png'); ">
      <a href="http://localhost:8888/tests/index2.html">France</a>
      </li>


      voila un des boutons.. en faite il ya une image comme background..
      je sais pas utiliser le javascript
      Est ce que je peux mettre dans les bouton value="1".... dans chaque bouton
      et j'ai trop saisie comment je récupère le choix.. :/ tu peux m'expliquer encore mieux stp je suis nouveau dans le domaine :p

      Merci :)
      0
      1. jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   4 831 > GASTON22 Messages postés 229 Statut Membre
         
        Si tu utilises une BDD ... il te faut utiliser le langage PHP .....

        Pour ce qui est de ton "bouton" (qui est en fait une liste ( <li>...</li>) ... tu peux placer dans l'URL la "variable" correspondant de la manière suivante:

        <li class="items" style="background-image:url('https://pbs.twimg.com/profile_images/1298643948/FranceFlag_svg.png'); ">
                <a href="http://localhost:8888/tests/index2.html?choix_pays=1">France</a>
              </li>
        


        .... sachant que si tu fais du PHP... il vaudrait mieux modifier l'extension de ton fichier index2.html en index2.php


        Si tu ne connais rien au PHP .. je t'invite à trouver et à suivre des Tutoriels sur internet pour apprendre les bases de ce langage.... qui te seront nécessaire par la suite à la réalisation de ton site....
        0
      2. GASTON22 Messages postés 229 Statut Membre 1 > jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention  
         
        Donc je fait manuellement les liens des boutons comme tu me la montré...
        http://localhost:8888/tests/index2.html?choix_pays=1

        et après pour récupérer cette variable "choix_pays" qui se trouve dans le lien je fait comme ca ? :
        <?php
        $choix_pays = isset($_GET['choix_pays'])?$_GET['choix_pays']:NULL;
        ?>
        0
  2. jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   4 831
     
    pour récupérer cette variable "choix_pays" qui se trouve dans le lien je fait comme ca ? :

    oui

    Donc je fait manuellement les liens des boutons comme tu me la montré...

    Oui.. sauf qu'il faudrait modifier l'extension de ta page et la mettre en .PHP
    comme ceci:
    http://localhost:8888/tests/index2.php?choix_pays=1
    

    Et qu'au lieu de le faire "manuellement" .. tu pourrais les extraire de ta Base de données... et donc générer tes liens automatiquement via le PHP et le contenu de ta base....

    Dans l'idéal, tu fais une Table pour les PAYS avec les champs :
    id, nom_pays,description,flag ....

    Pour récupérer le contenu de cette table en php... tu fais une requête SELECT du style :
    SELECT id
                ,nom_pays
            ,flag
     FROM tatable
    


    et en PHP tu génères tes boutons à partir de ce résultat... un truc du genre:
    // requête
    $sql="SELECT id
                 , nom_pays
                 , flag
     FROM tatable";
    
    //execution de la requete
    $resultat= $pdo->query($sql);
    //on transforme le resultat en array
    $arrayResultat = $pdo->->fetchAll();
    
    //on boucle sur l'array pour générer les LI
    foreach($arrayResultat as $pays){
    echo "<li class='items' style='background-image:url(\"".$pays['flag'] ."\"); '>
            <a href='index2.php?choix_pays=".$pays['id'] ."'>".$pays['nom_pays']."</a>
          </li>";
    }
    
    
    0
    1. GASTON22 Messages postés 229 Statut Membre 1
       
      j'ai essayé ca

      <?php
           $sql="SELECT id
           , nom
           , flag
           FROM ville";
           $resultat= $pdo->query($sql);
           $arrayResultat = $pdo->fetchAll();
            foreach($arrayResultat as $pays){
                echo "<li class='items' style='background-image:url('".$pays['flag'] ."'); '>
                    <a href='index2.php?choix_pays=".$pays['id'] ."'>".$pays['nom']."</a>
                </li>";
            }
            ?>


      mais je comprend pas ca me fait " Undefined variable: pdo " et " Call to a member function query() on a non-object "

      tu peux m'aider STP j'aime bien l'idée sa me fait moins de code plus propre... mais il faut que sa marche.
      J'ai mis une table qui s'appelle ville et elle contient id, nom, flag.
      0