[RESOLU] Sauvegarde variable après refresh

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : [RESOLU] Sauvegarde variable après refresh

Re: Sauvegarde variable après refresh

par pleiode » 24 août 2022, 16:49

tu devrais envisager du localStorage JS plutot que la session php je pense
Ok merci pour ton aide Spols :)

Du coup j'ai réussi !

En gros je récupère la latitude et longitude de l'API et j'ouvre une nouvelle URL avec celles-ci !

<script>
        function initMap() {

            var searchInput = 'searchMapInput';

            var autocomplete;
            autocomplete = new google.maps.places.Autocomplete((document.getElementById(searchInput)), {
                types: ['geocode']
            });
            google.maps.event.addListener(autocomplete, 'place_changed',

                function() {
                    var near_place = autocomplete.getPlace();
                    var address = near_place.formatted_address;
                    var latitude = near_place.geometry.location.lat();
                    var longitude = near_place.geometry.location.lng();
                    document.getElementById('location-snap').innerHTML = address;
                    document.getElementById('lat-span').innerHTML = latitude;
                    document.getElementById('lon-span').innerHTML = longitude;

                    window.location.href='index.php?adress='+address+'&lat='+latitude+'&long='+longitude;

                });
        }
    </script>

Re: Sauvegarde variable après refresh

par Spols » 24 août 2022, 12:57

tu devrais envisager du localStorage JS plutot que la session php je pense

Re: Sauvegarde variable après refresh

par pleiode » 24 août 2022, 10:45

Oui j'ai vu que c'était assez complexe

Ce que j'essai de faire c'est lorsque l'utilisateur recherche une ville avec l'API Google places cela enregistre la latitude et la longitude dans des variables PHP !

Re: Sauvegarde variable après refresh

par Spols » 24 août 2022, 08:39

Il faut bien comprendre que php s'execute coté serveur et javascript coté client. et que la communication entre les deux n'est pas DU TOUT automatique, il faut l'implémenter et bien y réflèchir

Sauvegarde variable après refresh

par pleiode » 23 août 2022, 20:37

Hello,
J'essaie t'en bien que mal à sauvegarde 2 variables, la latitude et la longitude de la ville que je cherche.

j'essaie de créer une variable session mais ça ne marche pas...

Une aide serait la bienvenue ! Merci :D
<?php
session_start();
?>

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>

    <script>
        var timezone_offset_minutes = new Date().getTimezoneOffset();
        timezone_offset_minutes = timezone_offset_minutes == 0 ? 0 : -timezone_offset_minutes;
        // Timezone difference in minutes such as 330 or -360 or 0
        console.log(timezone_offset_minutes);
    </script>

    <script>
        function initMap() {

            var input = document.getElementById('searchMapInput');
            var autocomplete = new google.maps.places.Autocomplete(input);

            autocomplete.addListener('place_changed', function() {
                var place = autocomplete.getPlace();
                document.getElementById('location-snap').innerHTML = place.formatted_address;
                document.getElementById('lat-span').innerHTML = place.geometry.location.lat();
                document.getElementById('lon-span').innerHTML = place.geometry.location.lng();
            });
        }
    </script>

    <script src="https://maps.googleapis.com/maps/api/js?key=**************&libraries=places&callback=initMap" async defer></script>




    <input id="searchMapInput" type="text" placeholder="Enter a location">

    <ul id="geoData">
        <li>Address: <span id="location-snap"></span></li>
        <?php $_SESSION['latitude'] = '<span id="lat-span"></span></li>' ?>
        <?php $_SESSION['longitude'] = '<span id="lon-span"></span></li>' ?>
    </ul>

    <h1> <?=$latitude?> </h1>

    <?php
    $timezone_offset_minutes = $_GET['timezone_offset_minutes'];
    $timezone_name = timezone_name_from_abbr("", $timezone_offset_minutes * 60, false);
    echo $timezone_name;
    date_default_timezone_set($timezone_name);

    $url = 'http://ws1.metcheck.com/ENGINE/v9_0/json.asp?lat=' . $latitude . '&lon=' . $longitude . '&lid=13308&Fc=As';
    $raw = file_get_contents($url);
    $json = json_decode($raw);

    $dt = new DateTimeImmutable($heure1, new DateTimeZone('UTC'));
    $date = $dt->setTimezone(new DateTimeZone($timezone_name))->format('H') . 'h';

</body>

</html>