IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Transformer une variable Javascript


Sujet :

JavaScript

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2019
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 24
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2019
    Messages : 28
    Points : 17
    Points
    17
    Par défaut Transformer une variable Javascript
    Bonjour,

    Je cherche à passer une variable Javascript dans du PHP, cette variable est le résultat d'une fonction qui me renvoie un nombre et que je veux par la suite traiter, mais impossible.
    J'ai fait passer le contenu du résultat de ma fonction dans une variable PHP, et j'arrive bien à l'afficher, "234ok ", mais lorsque je le passe dans mon if il me le sort pas en nombre.
    J'ai essayé de découper ma variable PHP et je me suis rendu compte que dedans se trouvais tout le code JS.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    <script type="text/javascript">
    					var la = <?php echo $lat;?>;
    					</script>
     
    					<?php
                                                    $distance ='<script type="text/javascript">
                                                    function distance(lat1, lon1, lat2, lon2, unit) {
                                                    if ((lat1 == lat2) && (lon1 == lon2)) {
                                                            return 0;
                                                    }
                                                    else {
                                                            var radlat1 = Math.PI * lat1/180;
                                                            var radlat2 = Math.PI * lat2/180;
                                                            var theta = lon1-lon2;
                                                            var radtheta = Math.PI * theta/180;
                                                            var dist = Math.sin(radlat1) * Math.sin(radlat2) + Math.cos(radlat1) * Math.cos(radlat2) * Math.cos(radtheta);
                                                            if (dist > 1) {
                                                                    dist = 1;
                                                            }
                                                            dist = Math.acos(dist);
                                                            dist = dist * 180/Math.PI;
                                                            dist = dist * 60 * 1.1515;
                                                    { dist = dist * 1.609344 }
                                                    
                                                            return dist;
                                                    }
                                            }
    
                                                    var d= Math.round(distance(50.852969, 3.349903,la,2.349903));
                                                    document.write(d)</script>';
                                                    echo $distance;
                    
                                                    
                                                    if($distance<100){
                                                            
                                                            echo "ok";
                                                    }
                                                    ?>
    Merci de votre aide

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    il faut utiliser Ajax.

  3. #3
    Expert confirmé
    Avatar de javatwister
    Homme Profil pro
    danseur
    Inscrit en
    Août 2003
    Messages
    3 681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : danseur

    Informations forums :
    Inscription : Août 2003
    Messages : 3 681
    Points : 5 221
    Points
    5 221
    Par défaut
    Bonjour,

    Ton problème n'est pas très logique;

    - Tu veux renvoyer un nombre vers le serveur pour en faire ce que tu veux. Ok;
    - Ce nombre est généré par une fonction JS. OK;

    Ce qu'il faut comprendre, c'est que ce nombre n'a rien à voir avec php... Tu le stockes soit dans une variable JS si tu veux l'envoyer par Ajax, soit dans l'attribut value d'un champ de formulaire pour un envoi standard;

    Mais tant qu'il n'y aura pas un nouvel aller-retour serveur, php ne connaîtra pas le résultat de ta fonction "distance";

Discussions similaires

  1. Utilisation d'une variable Javascript en html
    Par Crazynoss dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 28/10/2005, 16h43
  2. [PHP-JS] Récuperer une variable javascript..
    Par gwendy dans le forum Langage
    Réponses: 3
    Dernier message: 17/10/2005, 21h24
  3. Affecter une variable javascript à une variable php
    Par gwendy dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 17/10/2005, 20h58
  4. Récupérer une variable --> Javascript+CSS
    Par Skarlix dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 30/08/2005, 16h01
  5. [DEBUTANT] Transformer une variable Double en STring
    Par Battosaiii dans le forum Langage
    Réponses: 6
    Dernier message: 13/06/2005, 16h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo