Récupération variable javascript dans php

Fermé
sweety-23 Messages postés 31 Date d'inscription vendredi 29 août 2008 Statut Membre Dernière intervention 18 juillet 2010 - 10 oct. 2008 à 22:44
Groarh Messages postés 682 Date d'inscription vendredi 1 août 2008 Statut Membre Dernière intervention 28 juin 2015 - 11 oct. 2008 à 00:04
Bonjour,
Je voudrais bien savoir s'il existe un code permettant de récupérer une variable javascript dans un code php.
Merci de bien vouloir me répondre. C'est urgent.
Merci d'avance.
A voir également:

1 réponse

Groarh Messages postés 682 Date d'inscription vendredi 1 août 2008 Statut Membre Dernière intervention 28 juin 2015 185
11 oct. 2008 à 00:04
Alors oui, c'est possible, et de plusieurs manières :

1/ Utiliser des champs cachés <input type="hidden"> : tu modifies par javascript la valeur du champ, et tu fais envoyer les informations du formulaire au serveur.
Comment s'en servir ? Comme des champs normaux : tout champ de forumlaire possédant un attribut name envoie sa valeur dans une variable du même nom. Exemple :
<input type="hidden" name="bidule" value="12" />
va créer la variable :$_REQUEST['bidule'] (également disponible dans $_POST ou $_GET suivant quelle méthode est employée) égale à 12.
Cette méthode pose quelques contraintes :
- le seul moyen, pour l'utilisateur, de passer à la page suivante doit être de valider le formulaire, en cliquant sur le bouton de soumission. Heureusement, le css permet de déguiser ces boutons en simples liens ;
- pour faire diffénrents liens, il faut faire différents formulaires, en précisant à chaque fois l'attribut action.
Attention à respecter les méthodes du DOM en accédant à la valeur des champs cachés.

2/ Utiliser la méthode GET : transmettre les données via l'url en ajoutant un point d'interrogation, par exemple :
adresse.com/index.php?var1=machin&var2=truc
Dans cet exemple, le serveur récupère les variables $GET['var1'] égale à 'machin' et $GET['var2'] égale à 'truc'.
Inconvénients :
- la longueur des url est limitée (à 256 caractères sur les vieux systèmes et 1024 sur les actuels si je ne m'abuse) ;
- il vaut mieux ne pas transmettre de données secrètes ainsi, car elles sont visibles dans l'url !

3/ Utiliser un objet XMLHTTPRequest. Je te renvoie à Google si tu ne les connais pas. Sache que le principe est le même que les formulaires : il te permet d'envoyer une requête au serveur, en POST ou en GET (ou même PUT et DELETE, peu connues en général ^^), mais avec un gros avantage : il ne recharge pas la page ! Le dialogue avec le serveur se fait en arrière-plan. Cette tehnique est la base de l'Ajax.

Voilà, j'en ai encore fait des tartines... si quelque chose n'est pas clair, n'hésite pas à demander. ;)
0