web-dev-qa-db-fra.com

Comment accéder à la variable php SESSION en javascript

J'essaie de créer un site Web de téléchargement d'images. En cela, lorsqu'un utilisateur se connecte, je définis une variable $_SESSION['id'] dans php. Maintenant, je souhaite vérifier si $_SESSION['id'] est défini dans mon fichier javascript (general.js) afin de réaliser certaines fonctions. Comment devrais-je m'y prendre?

3
meagler
<?php $session_value=(isset($_SESSION['id']))?$_SESSION['id']:''; ?>
    <html>
    <head>
    <script type="text/javascript">
    var myvar='<?php echo $session_value;?>';
    </script>
    <script type="text/javascript" src="general.js"></script>
    </head>
    <body>

    </body>
    </html>

Dans l'extrait de code ci-dessus, j'ai initialisé la variable globale myvar avec la valeur stockée dans la variable de session php dans le fichier script avant general.js le fichier est référencé dans script. Il sera accessible dans general.js fichier

9
Rubin Porwal

Un exemple simple s'il vous plaît essayez ceci

<?php 
session_start();
$_SESSION['id'] = 12;

?>

<script>
alert(<?php echo $_SESSION['id']; ?>);
</script>

Vous pouvez même utiliser une variable php et un tableau comme variable dans js comme ci-dessous

<?php
    $id= $_SESSION['id'];
    $data= array('one', 'two', 'three');
?>
<script type="text/javascript">
    var idr = '<?php echo $id; ?>';
    var datar = <?php echo json_encode($data); ?>;
</script>
3
user1234

Ici PHP est une exécution côté serveur et JavaScript est une exécution côté client. et $_SESSION est une construction côté serveur. Donc, vous ne pouvez probablement pas y accéder directement en utilisant JavaScript. Vous devez stocker cette variable dans $_COOKIE pour pouvoir y accéder côté client.

Vous pouvez obtenir cette session en utilisant PHP, puis l'utiliser pour le JavaScript comme ceci

<?php
$variablephp = $_SESSION['category'];
?>

<script>
var variablejs = "<?php echo $variablephp; ?>" ;
alert("category = " + variablejs);
</script>

Ici, vous obtenez une session comme echo $variablephp en utilisant PHP et assignez cette valeur à la variable JavaScript.

2
K.Suthagar

Le meilleur moyen consiste à echo l'ID de session dans une variable javascript.

<script>
  var sessionId = "<?php echo $_SESSION['id']; ?>";

  // Your javascript code goes here
</script>
0
Ali Yousuf