Passage de variable javascript à php

Casper -  
 Casper -
Bonjour,
Je veux faire un passage de variable utilisée dans une fonction javascript à un code ecrit par php.
ci-dessous la fonction qui retourne la variable:

function valeur(e){
var v = e.innerHTML;
return v;
}
Comment puis-je proceder pour utliser le contenu de cette variable dans le corps du programme ecrit par PHP.
En vous remerciant d'avance.
A voir également:

5 réponses

avion-f16 Messages postés 20367 Statut Contributeur 4 509
 
J'ai pas vraiment d'idée.
La seule que j'ai c'est d'envoyer une requête AJAX qui ajoutera la variable dans $_SESSION['cequetuveux'] et tu peux ensuite l'utiliser en PHP.
0
Casper
 
Merci pour ta reponse rapide.
Je suis débutant dans le domaine de développement web (je maitrise pas AJAX), peux-tu me donner un exemple si ça t'embettes pas.
merci.
0
avion-f16 Messages postés 20367 Statut Contributeur 4 509
 
ajax-variable-js.php :
<?php
session_start();
$_SESSION['variable_javascript'] = $_POST['value'];
?>

ajax-variable-js.js :
function valeur(e){
    var v = e.innerHTML;
    return v;
} 

function getXMLHttpRequest() {
	var xhr = null;
	
	if (window.XMLHttpRequest || window.ActiveXObject) {
		if (window.ActiveXObject) {
			try {
				xhr = new ActiveXObject("Msxml2.XMLHTTP");
			} catch(e) {
				xhr = new ActiveXObject("Microsoft.XMLHTTP");
			}
		} else {
			xhr = new XMLHttpRequest(); 
		}
	} else {
		alert("Votre navigateur ne supporte pas l'objet XMLHTTPRequest...");
		return null;
	}
	
	return xhr;
}

function onload_ajax() {
    var ajax = getXMLHttpRequest();
    ajax.open("POST", "ajax-variable-js.php", true);
    ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    ajax.send("value=" + valeur(e) );
}

Sur ta page HTML, n'oublie pas d'inclure le fichiers JS :
<head>
    <!-- Avant -->
    <script type="text/javascript" src="ajax-variable-js.js"></script>
    <!-- Après -->
</head>
...

Et sur ton body :
<body onload="onload_ajax()">


Pour pouvoir récupérer $_SESSION['variable_javascript'] sur un page PHP, ajoute :
<?php session_start(); ?>

Au tout tout début du fichier (avant le doctype, <html>, ...). En gros, il ne peux pas y avoir le moindre caractère et espace avant <?php
0
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
ce que tu peux faire c'est venir "ecrire la valeur dans un input caché d'un formulaire au moment du submit


<form name="form1" method="post" action="script.php" onSubmit="return ecrire_valeur('une valeur');">
....autres cahmps
<inupt type="hidden" name="champ1" id="champ1" value="">
<input type="submit" name="envoyer" value="Envoyer">
<input
</form>


et ta fonction:

function ecrire_valeur(e){
obj=document.getElementById('champ1');
obj.value=e;
return true; //ça c'est pour que le formulaire parte


}
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Casper
 
Je vous remercie de votre aide.
J'ai opté à la deuxième solution (Alain_42), pour moi c'est plus simple en tant que débutant. Mais quand meme je te remercie encore une autre fois Avion_f16.
Bonne journée.
0