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.
Configuration: Windows XP Internet Explorer 6.0

5 réponses

  1. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
     
    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
  2. 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
  3. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
     
    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
  4. Alain_42 Messages postés 5413 Statut Membre 904
     
    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
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. 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