Envoyer une variable à une page HTML/PHP

Résolu/Fermé
JiP_95 Messages postés 30 Date d'inscription dimanche 27 janvier 2008 Statut Membre Dernière intervention 30 mai 2023 - 29 mai 2023 à 22:38
JiP_95 Messages postés 30 Date d'inscription dimanche 27 janvier 2008 Statut Membre Dernière intervention 30 mai 2023 - 30 mai 2023 à 12:04

Bonjour,

Je ne suis créer un site me permettant de montrer des images classées dans des répertoires, avec une  maigre connaissance des langages HTML,CSS et PHP, que je n'avais pas pratiquées avant.

J'utilise un menu du type suivant, dans lequel toutes les pages PHP activées par ce menu sont identiques, sauf qu'elles affichent chacune un répertoire spécifique, mentionné dans la page :

<nav >
            <ul >
                <li><a href="nature.php">NATURES MORTES</a></li>
                <li><a href="paysages.php">PAYSAGES </a></li>
                ...
                <li><a href="portraits.php">PORTRAITS</a></li>
             </ul>
        </nav>

Je voudrais n'avoir qu'une seule page "afficher.php" à laquelle je communiquerais le nom du répertoire à afficher pour faciliter la maintenance ultérieure :

<nav >
            <ul >
                <li><a href="afficher.php">NATURES MORTES</a></li>  qui afficherait alors rep1
                <li><a href="afficher.php">PAYSAGES </a></li>   qui afficheraitalors rep2
                ...
                <li><a href="afficher.php">PORTRAITS</a></li> qui afficherait alors repN
             </ul>
        </nav>

Est-ce possible assez facilement ? J'ai dû passer à côté de la bonne syntaxe.

Merci d'avance.
Windows / Firefox 113.0

A voir également:

4 réponses

JiP_95 Messages postés 30 Date d'inscription dimanche 27 janvier 2008 Statut Membre Dernière intervention 30 mai 2023 4
30 mai 2023 à 12:04

Merci bien !

Je croyais que le problème venait du HTML, mais c'était surtout dans le PHP, que je ne maîtrise pas encore.

J'avais bien testé href="afficher.php?dossier='portraits'", mais en ajoutant visiblement des quotes inutiles ou nuisibles et surtout, je pensais récupérer la variable directement dans $dossiers sans passer par la fonction $_GET.

Après correction, ça fonctionne super bien... et mon problème est résolu.

Jip_95

PS : évidemment que j'utilise des id pour les div et les nav, mais j'avais voulu alléger mon post.

1
Arzert Messages postés 10 Date d'inscription jeudi 16 décembre 2021 Statut Membre Dernière intervention 21 avril 2024
29 mai 2023 à 23:12

Bonjour,

si tu veux mettre plusieurs parties sur une même page, je te conseille d'utiliser les ID :

https://openclassrooms.com/fr/courses/1603881-creez-votre-site-web-avec-html5-et-css3/1604646-creez-un-lien-hypertexte-en-html#/id/r-8030457

0
jordane45 Messages postés 38197 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 30 mai 2024 4 675
29 mai 2023 à 23:25

Bonjour,

Il est possible de transmettre des variables dans l'URL ( via les variables $_GET )

Il te suffit de faire tes liens sous la forme

  <li><a href="afficher.php?dossier=portraits">PORTRAITS</a></li> qui afficherait alors repN

Dans ton fichier   afficher.php, tu pourras récupérer la variable en faisant

<?php

$dossier = !empty($_GET['dossier']) ? trim($_GET['dossier']) : null;

A toi de voir ensuite ce que tu veux en faire... 


0
jee pee Messages postés 39815 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 31 mai 2024 9 211
29 mai 2023 à 23:27

Bonjour,

Tu pourrais utiliser la syntaxe des formulaires html qui passent les réponses au php avec la méthode GET :

html

 <ul>
                <li><a href="page.php?nom=Durand&prenom=Pierre">Durand</a></li>  
                <li><a href="page.php?nom=Dupond&prenom=Mélanie">Dupond</a></li>  
</ul>

php

<?php
  
  $nom     = $_GET['nom'];
  $prenom  = $_GET['prenom'];

  echo  $prenom, ' ', $nom;
?>

0