Page dynamique

Fermé
GASTON22 Messages postés 204 Date d'inscription mercredi 27 mars 2013 Statut Membre Dernière intervention 23 décembre 2019 - 14 janv. 2015 à 13:53
GASTON22 Messages postés 204 Date d'inscription mercredi 27 mars 2013 Statut Membre Dernière intervention 23 décembre 2019 - 16 janv. 2015 à 19:52
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

jordane45 Messages postés 38169 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 9 mai 2024 4 663
14 janv. 2015 à 14:08
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
GASTON22 Messages postés 204 Date d'inscription mercredi 27 mars 2013 Statut Membre Dernière intervention 23 décembre 2019 1
14 janv. 2015 à 14:42
<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
jordane45 Messages postés 38169 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 9 mai 2024 4 663 > GASTON22 Messages postés 204 Date d'inscription mercredi 27 mars 2013 Statut Membre Dernière intervention 23 décembre 2019
14 janv. 2015 à 17:24
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
GASTON22 Messages postés 204 Date d'inscription mercredi 27 mars 2013 Statut Membre Dernière intervention 23 décembre 2019 1 > jordane45 Messages postés 38169 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 9 mai 2024
14 janv. 2015 à 17:41
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
jordane45 Messages postés 38169 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 9 mai 2024 4 663
14 janv. 2015 à 18:04
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
GASTON22 Messages postés 204 Date d'inscription mercredi 27 mars 2013 Statut Membre Dernière intervention 23 décembre 2019 1
16 janv. 2015 à 19:52
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