passage de variable par balise href

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : passage de variable par balise href

par Babar » 03 mars 2005, 21:42

Parce que la 2e fois que tu fais appel à ta variable $niv, tu n'es plus dans une balise php. Donc php ne la traite pas et html prend ça comme une chaine de caractères comme tout le reste.
Il faut faire un truc du genre:
<? echo $niv; ?>
<p><a href="Ajout.php?niv=<? echo $niv; ?>">Ajouter</a></p>
Ou (ce qui revient au même):
<?
echo $niv;
echo "<p><a href=\"Ajout.php?niv=$niv\">Ajouter</a></p>";
// sans oublier les antislashs \ devant les guillemets qui sont à l'intérieur...
// ...pour que php les traites comme de simples caractères
?>
Voilou, voilu :wink:

par renan44 » 03 mars 2005, 21:39

de la façon dont tu faisait c'est logique que la valeur soit $niv puisque, bien que tu spécifie le $ signalant une variable, celle ci n'est pas dans un script php, mais html, ki comprend lui, le texte $niv


Il te faut donc mettre :
<a href="Ajout.php?niv=<? echo $niv; ?>">Ajouter </a>

MERCI!!!

par Darim » 03 mars 2005, 21:38

un grand merci

par Xenon_54 » 03 mars 2005, 21:35

<a href="Ajout.php?niv=<?php echo urlencode($niv); ?>">Ajouter</a>
Faut afficher la chaine à envoyer non?
Utilise urlencode() pour être certain que toute la chaine soit correctement envoyée. (tout dépend biensûr du contenu de la variable)

passage de variable par balise href

par Darim » 03 mars 2005, 21:11

Voici mon code:
<? echo $niv; ?>
<p><a href="Ajout.php?niv=$niv">Ajouter </a>
</p>

J'ai des problèmes lors de l'envoi de la variable $niv à la page Ajout.php. Le echo me renvoie bien la valeur de $niv, mais quand je récupère la variable $niv dans la page Ajout.php elle contient la chaine de caractères $niv et pas la valeur contenue dans la variable.
Je récupère la variable avec la méthode GET, mais le problème vient de l'envoi car au survol du lien avec la souris niv ne contient que la chaine de caractère $niv).

Alors que dans une instruction comme celle ci:
header("location:Back.php?niv=$niv");
ça marche.

Pourquoi?

Merci de votre aide!!!