HTML/PHP recupérer la valeur d'un lien

Résolu/Fermé
azerty - 12 août 2009 à 20:40
jordane45 Messages postés 36946 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 8 février 2023 - 2 mars 2019 à 21:48
Bonjour,

Alors voila ,j'ai une page PHP qui s'appelle test.php avec une série de lien qui envoie tous sur la page cible.php.
Dans la page cible.php, j'ai une variable $test et je voudrais y mettre la valeur du lien sur lequel l'utilisateur aura cliqué...

Par exemple, sur test.php j ai 3 lien : un lien Pierre, un lien Paul et un lien Jacques, et je voudrais savoir si il est possible de faire en sorte que si l'utilisateur clique sur Pierre la variable $test de cible.php soit égal à Pierre, si le mec clik sur Paul $test vaudra Paul etc... Es se que c'est possible?

Merci d'avance =)
A voir également:

3 réponses

1000trad Messages postés 2026 Date d'inscription lundi 29 décembre 2008 Statut Membre Dernière intervention 20 mars 2011 121
12 août 2009 à 20:47
Bien sur, il faut passer par une variable GET :

Lien paul :
<a href="cible.php?test=paul">Lien paul</a> 


Lien pierre :
<a href="cible.php?test=pierre">Lien pierre</a> 


Dans la page cible, il sera créer une variable $_GET['test'] qui prendra la valeur qu'il y a apres le "égal". (ici, paul ou pierre)

Tu pourra donc utiliser cette variable et faire ce que tu veux !

EX :

if(isset( $_GET['test']))
{
   if($_GET['test'] == "pierre") echo 'Bonjour Pierre';
   elseif($_GET['test'] == "paul") echo 'Bonjour Paul';
   elseif($_GET['test'] == "luc") echo 'Bonjour Luc';
   else echo'Tu as bidouillé un truc bouhhhh !!!! je ne te dirai pas bonjour !';
}
else echo 'Une erreur s'est produite';



Voila !
5
Utilisateur anonyme
12 août 2009 à 20:44
Ca serait plus pratique en javascript, mais ça dépand de ce que tu veux faire de cette variable.
0
Bonjour,

Merci pour votre aide. J'ai une petite question supplémentaire.

Est-ce que ce serait possible de faire la même chose si au lieu de changer de page, on se dirige vers une ancre situé dans la page dans laquelle on a cliquer le lien.

Je voudrais donc faire ceci :

Si je clique sur un lien contenu dans mon div, écrire un certain texte dans mon div
Si je clique sur un autre lien, écrire autre chose dans mon div

J'ai vu que normalement il faut utiliser du javascript pour modifier un div au clic, mais je dois rendre un travail et je n'ai pas encore appris le javascript.

Est-ce possible avec du php ?
0
jordane45 Messages postés 36946 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 8 février 2023 4 491
2 mars 2019 à 10:54
Bonjour,
En JS
<!DOCTYPE html>
<html>
    <head>
        <title>TEST</title>
        <meta charset="utf8">
    </head>
    <body>
      <a href="#" onclick="modifierDiv('toto');"> Changer en TOTO</a>
      <a href="#" onclick="modifierDiv('machin truc bidule');"> Ecrire autre chose </a>
      <div id="affichage"></div>
      <script type="text/javascript">
        function modifierDiv(msg){
          var affichage = document.getElementById('affichage');
          affichage.innerHTML = msg;
        }

      </script>
    </body>
</html>
0
Bonjour,

Merci pour votre réponse. J'ai cependant un petit problème :

 <div class="Specification">

<h1> Aquavia Aqualife 6 </h1>

<nav class="navigateur">
<ul>
<li><a href="#Produit1" onclick="modifierDiv('test);" > Description</a></li>
<li><a href="#Produit1" onclick="modifierDiv('test2);" > Fonction </a></li>
<li><a href="#Produit1" onclick="modifierDiv('test3);"> Brochure</a></li>
<li><a href="#Produit1" onclick="modifierDiv('test4);" > Devis </a></li>
</ul>
</nav>

<div id="affichage"></div>

<script type="text/javascript">
function modifierDiv(msg){
var affichage = document.getElementById('affichage');
affichage.innerHTML = msg;
}

</script>
</div>


Je ne comprends pas pourquoi le texte que j'envoie à la fonction ne s'affiche pas dans mon div affichage. Votre code fonctionnait parfaitement, mais quand j'essaye de l'adapter dans mon code ca ne fonctionne pas, je ne comprends pas ce que je fais de mal.

Est-ce que vous comprenez pourquoi ça ne fonctionne pas ?
0
jordane45 Messages postés 36946 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 8 février 2023 4 491
2 mars 2019 à 15:59
Sûrement par ce que tu as oublié de fermer les quotes ...dans l'appel de tes fonctions
modifierDiv('test);" >
modifierDiv('test2);" >

etc...
0
jordane45 Messages postés 36946 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 8 février 2023 4 491
2 mars 2019 à 16:01
NB: A l'avenir, merci aussi de faire un effort pour poster ton code. Il faut y indiquer le langage afin d'avoir la coloration syntaxique...
Explications disponibles ici : https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code

NB² : Evite également de poster des questions dans des discussions qui dates de 2009... la prochaine fois ouvre ta propre question sur le forum.

merci.
0
Je ferai attention la prochaine fois, merci.

Si je veux modifier une grosse partie de min div (plusieurs paragraphes), il n'y a pas moyen de faire autrement que d'envoyer un grand texte à ma fonction?

C'est possible de créer une variable php qui contient mon texte, et d'envoyer la variable à la fonction ?

Parce que j'aimerai mettre un peu en page mon paragraphe
0