[php] passer une variable dans un lien

Bonjour à tous

voilà ce que je cherche à faire :
quand on clique sur un lien (un truc normal <a href … ) ça me modifie une variable. par exemple, une variable de session.

Cela me permettrait d’afficher la page que l’utilisateur veut, sans avoir à faire de include("$blabla"); ou encore, servir à garder un historique des pages visitées, etc…

j’ai essayé un peu à l’arrache avec un onclick="<? $test = 'ok' ?>" mais ça marche pas (évidement vous me direz).

Est-ce possible ?

Comment ?

Mes souvenirs remontent à pas mal loin, mais il ne me semle pas que tu puisses intégrer des contrôles côté serveur façons .NET.

La méthode, celle que j’utilise d’ailleurs, consiste à encoder tes url avec les variables qu’il te faut, et c’est la page suivante qui les traitent. Du coup je me suis fait un petit include qui gère ça tout seul, et que j’appelle dans chacune de mes page. Il me semble cependant que c’est cette méthode dont tu ne voulais pas entendre parler, donc pour te répondre, non, à ma connaissance il n’y a pas moyen de faire autrement.

Merci de ton explication, j’attaque à coup de includes comme j’avais commencé…

De rien :stuck_out_tongue: Bien sur, tout ça c’est sous réserve que je ne me trompe étant donné que ma spécialité c’est plutôt ASP et ASP.NET.

Ton salut est du coté de XML HTTP Request. C’est un protocole “a la con” (géré par tout les navigateurs) qui te permet de faire de l’interactivité client serveur sans toutefois recharger ta page courante.

Par contre c’est un truc qui demande de très hautes connaissances en Javascript.

En gros: tu fais une requete XML HTTP sur le serveur, celui ci répond juste des entetes qui contiennent les trucs demandés (et pas la page entière). A coup de javascript tu récupère les infos que tu veux et tu les bazardes dans ta page en DHTML.

bon, c’est un site que je dois faire pour les cours, faudrait pas non plus que ça me prenne la tête :stuck_out_tongue:

mais je note l’info, ça peut toujours servir, merci beaucoup!
(faudra vraiment que je m’interesse au XML un jour)

Désolé de repondre si tard, mais j’ai du mal a comprendre ce que tu veux.
Tu peux faire simplement un truc comme ça ( bon biensur ça depend de ce qu’il faut afficher ) mais ça peut etre puissant par la suite.

<?php if(isset($_GET['variable'])) { echo $_GET['variable']; } <a href="?variable=toto">toto !</a> ?>

sachant quand meme quand je dit que ça peut etre puissant, que : si tu fais un truc dans ce genre ( ok j’admet c’est un peu bricolage :stuck_out_tongue: )

[code]<?php
$toto = " bonjour a tous et a toutes je ne sais pas quoi ecrire mais j’ai la flemme de taper raison pour laquelle je met n’importe quoi et je ne met pas les accents. na";

$patron = « Je trouve cette idée lamentable, il faudrait vraiment voir a repenser quelque chose de correct pour la prochaine fois. »;

$tonton = " Alors jojo ça va en ce moment l’ecole ? et les copines alors ? roh ne fait pas attention a ce que je dit je devient gateu tu sais a mon age …";
?>[/code]

On ameliore le code en 1 : maintenant qu’on a des super variables :stuck_out_tongue:

[code]<?php
if($isset($_GET[‹ variable ›])) {
$var = $_GET[‹ variable ›]; // ça saoul de tout ecrire :stuck_out_tongue: }

echo ${$var};
?>[/code]

Bon c’est juste une idée comme ça hein … mais bon ça vaut ce que ça vaut.
ici si tu comprend pas ${$var}
Biensûr il n’est pas exclu qu’un ptit malin passe une variable par url, mais si c’est un prof, il a qu’a pas :stuck_out_tongue:
non sinon tu peux utiliser une switch pour eviter ce genre de desagrement … ( ok c’est long )

J’espere t’avoir aidé car j’ai quand meme passé 10min le temps de tout trouver :stuck_out_tongue:
bn

Fser et le bricolage

edit : mon dieu ! un oubli de tag a fermer : ?>

Si c’est pour un affichage variable de page tu peux utiliser un switch en plus :
Exemple :

Url : http://monsiteoueb.com/index.php?page=index

Dans ta page :

[code]<?php
if($isset($_GET[‹ page ›])) {
$page= $_GET[‹ page ›]; // merci fser :stuck_out_tongue: }
switch($page){
case « index »:
echo ‹ ma page d’accueil ›;
break;
case « contact »:
echo ‹ me contacter bla bla bla ›
break;

// etc…

}
?>[/code]