Récuperation d'une variable javascript ds du code php

Discussion dans 'Administration d'un site Web' créé par Zico, 28 Juillet 2003.

  1. Zico
    Zico Nouveau WRInaute
    Inscrit:
    4 Juillet 2003
    Messages:
    14
    J'aime reçus:
    0
    'lut a tous,

    j'aimerai savoir comment il est possible de recuperer dans du code php la valeur d'une variable déclarée ds un javascript.

    Du php vers le javascript, ca j sais faire
    mais l'operation inverse reste pour moi une enigme

    Merci de m'aider !! :)
    Bye !!!
     
  2. George Abitbol
    George Abitbol WRInaute passionné
    Inscrit:
    6 Juin 2003
    Messages:
    1 536
    J'aime reçus:
    0
    Salut

    Etant donné que le php est interprété par le serveur, tu dois repasser par celui-ci d'une façon ou d'une autre. Plusieurs solutions : un formulaire, un lien, l'ouverture d'un popup, l'utilisation d'une frame cachée contenant un fichier Php que tu rechargerais en lui passant la variable, etc. Certains utilisent même du flash pour ce genre de trucs ;)
    Pour ma part je préfère le formulaire ou le lien.

    Fred
     
  3. sepang
    sepang WRInaute discret
    Inscrit:
    26 Janvier 2003
    Messages:
    60
    J'aime reçus:
    0
    ou bien une phase du genre (dans le cas ou l'on a besoind e la résolution du client dans un script PHP, pour par exemple, faire des stats par résolution)

    <SCRIPT>
    <!--
    var w = screen.width;
    var h = screen.height;

    top.document.location = "mapage.php?w="+w+"&h="+h;
    //-->
    </SCRIPT>

    ------------------------
    dans ton mapage.php

    echo $_GET['w'].' << largeur<BR>'.$_GET['h'].' << hauteur';


    A+
    youplaboum!
    sepang
     
  4. SuN_OnE
    SuN_OnE Nouveau WRInaute
    Inscrit:
    20 Novembre 2003
    Messages:
    1
    J'aime reçus:
    0
    salut il est peut être un peu tard pour te donne une info sur ta kestion, mais je viens de m'y mettre sur php ^^, et moi aussi je suis confronte a se petit pb.
    g trouve comme astuce pour passe directement une variable jscript dans du ph:


    <script>
    var toto = 1
    document.write(toto);


    </script>
    <?
    $Titre = "<script>document.write(toto);</script>";
    ?>
    <?
    echo $Titre;
    ?>

    voilou, mais pour c n'est ke debut d'une grande prise de tete sur ce ki me reste a faire ^^
    A++
     
  5. Remi L.
    Remi L. WRInaute impliqué
    Inscrit:
    6 Septembre 2003
    Messages:
    909
    J'aime reçus:
    0
    Ta solution est étonnante!
    Je n'avais jamais essayé cela.

    Par contre, es-tu sûr que cela marche?
    Je veux dire: le php est toujours exécuté avant le javascript, puisque qu'il est est exécuté sur le serveur et le JS sur la machine du visiteur.
    Donc, c'est étonnant que cela marche...
     
  6. George Abitbol
    George Abitbol WRInaute passionné
    Inscrit:
    6 Juin 2003
    Messages:
    1 536
    J'aime reçus:
    0
    Ca marchera mais j'ai du mal à voir l'intérêt...

    Pourquoi ça marche -> lorsque tu fais le echo $titre, ça affiche dans la page le code javascript document.write(toto), donc ça écrit le contenu de toto dans le document. Mais cela implique que toto soit déjà connu, donc autant l'afficher directement.

    Tu aurais un exemple concret de ce que ce code t'a permis de faire et qui n'aurait pas été possible autrement ?

    Fred
     
  7. XcentY
    XcentY Nouveau WRInaute
    Inscrit:
    13 Mars 2012
    Messages:
    1
    J'aime reçus:
    0
    Alors, je suis tombé sur ce topic par hazard et j'ai trouvé des réponses tellement erronées que certains feraient bien de
    s'abstenir.
    Exemple : La réponse de Sun_one est tellement absurde qu'on se demande s'il sait ce qu'est passer une variable.
    Il faudrait lui demander comment il manipule la variable toto dans son script php et il verrait très vite la faiblesse de son code.
    Sérieusement, passer une variable se fait en attribuant la valeur de cette variable à une nouvelle variable dans php et pas en faisant un string du nom de la variable. Sun_one devrait essayer d'incrémenter, ou de modifier la nature de la variable pour bien comprendre.

    Comme l'ont dit d'autres, il faut utiliser des techniques pour passer une variable via un lien, un formulaire, ...
    Mais la technique que je préfère, est d'utiliser une iframe et ma page php principale. L'iframe recevra les variables Javascript qu'elle pourra traiter dans un script php. Pour les afficher sur la page principale sans recharger la page, chaque événement Javascript faisant appel à l'iframe modifiera le contenu d'un <DIV> en modifiant le .innerhtml. C'est d'ailleurs ce que fait AJAX d'une certaine manière :p
     
  8. Migou38
    Migou38 Nouveau WRInaute
    Inscrit:
    25 Mars 2013
    Messages:
    1
    J'aime reçus:
    0
    Il suffit de rejouer la page avec la variable passée en paramètre que l'on récupère dans une variable de session.
    Exemple pour récupérer les dimensions de l'écran en PHP :
    <?php
    session_start();
    if (isset($_GET['width'])) $_SESSION['screenW']= $_GET['width'];
    if (isset($_GET['height'])) $_SESSION['screenH']= $_GET['height'];
    ?>

    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>taille ecran</title>
    <?php
    if (!isset($_SESSION['screenW'])) { ?>

    <SCRIPT LANGUAGE="JavaScript" type="text/javascript">
    document.location="<?php echo $_SERVER["PHP_SELF"];?>?width="+screen.width+"&height="+screen.height;
    </SCRIPT>
    <?php } ?>
    </head>
    <body>
    <div align="center">
    <h4> dimensions de l'&eacute;cran en pixels :</h4>
    <b> <?php print 'largeur= '.$_SESSION['screenW'].' hauteur= '.$_SESSION['screenH']; ?> </b>
    </div>
    </body>
    </html>
     
  9. bech
    bech Nouveau WRInaute
    Inscrit:
    28 Janvier 2017
    Messages:
    3
    J'aime reçus:
    0
    J'ai fini par trouver une autre solution simple à ce problème : utiliser des cookies.

    - Javascript enregistre la variable à récupérer dans un cookie valable jusqu'à la fermeture du navigateur.
    - PHP récupère la valeur inscrite dans ce cookie.

    Des exemples de code pour récupérer la taille de la fenètre se trouvent dans cette discussion :
    https://www.webrankinfo.com/forum/taille-fenetre-php-t89689.html#p1563552
     
Chargement...
Similar Threads - Récuperation variable javascript Forum Date
Htaccess bloque la récuperation des variables _POST URL Rewriting et .htaccess 20 Novembre 2013
Problème de récupération des variables Développement d'un site Web ou d'une appli mobile 10 Octobre 2009
récupération du get après rewriting URL Rewriting et .htaccess 21 Juin 2019
Récupération d'un site après qu'on n'a pas renouvelé la location Débuter en référencement 30 Mars 2019
Demande de récupération d’un nom de domaine Droit du web (juridique, fiscalité...) 25 Février 2019
Récupération données avec json_decode Développement d'un site Web ou d'une appli mobile 21 Décembre 2017
Récupération nnd existant pour activité différente Débuter en référencement 15 Décembre 2016
Récupération IP utilisateurs Google Analytics 5 Septembre 2016
Récupération d'un flux RSS Problèmes de référencement spécifiques à vos sites 3 Février 2016
[résolu] recupération de flux xml et erreur encodage des caractères Développement d'un site Web ou d'une appli mobile 27 Janvier 2016
  1. Ce site utilise des cookies. En continuant à utiliser ce site, vous acceptez l'utilisation des cookies.
    Rejeter la notice