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 :

Conversion variables de session en JS


Sujet :

JavaScript

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre confirm�
    Homme Profil pro
    Enseignant
    Inscrit en
    Novembre 2018
    Messages
    184
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 42
    Localisation : France, Essonne (�le de France)

    Informations professionnelles :
    Activit� : Enseignant

    Informations forums :
    Inscription : Novembre 2018
    Messages : 184
    Par d�faut Conversion variables de session en JS
    Bonjour,

    Je cherche � convertir une variable de session en JS.

    Voici le code que j'utilise quand la variable de session est une cha�ne de caract�re :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    <script> var user_id = '<?php if(isset($_SESSION['sess_user_id']) && $_SESSION['sess_user_id'] != "") { echo $_SESSION['sess_user_id']; } ?>'</script>
    Le probl�me est dans le code suivant :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
     <script>var sess_communes = <?php if(isset($_SESSION['sess_communes'])) { echo $_SESSION['sess_communes']; } else '' ?></script>
    Le premier cas renvoie une cha�ne de caract�re alors que le second ram�ne un objet JSON.

    Cons�quence : quand une session est ouverte, �a marche nickel, mais d�s que l'on se d�connecte l'application est vautr�e et la console renvoie :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    <script>var id_user = '' // cad chaîne vide
    var sess_communes = </script> // le code n'est pas fermé
    Autrement dit, le code n'est pas ferm�.

    Comment contourner le probl�me ? Merci pour vos r�ponses.

    Sylvain



    MAJ : Mon code ne semble pas accepter les op�rateurs de coalescence :/

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    var communes1 = [];
    var communes2 = <?php echo $_SESSION['sess_communes'] ?> ?? 'Salut';
     
    console.log(communes2);
    ne renvoie rien et renvoie m�me une erreur : 'Unexpected token '??''

    Je sais pas trop quoi faire, c'est bloquant et toutes les solutions possibles et imaginables d�faillent les unes apr�s les autres....

    Merci pour vos retours. Sylvain

  2. #2
    Expert confirm� Avatar de Toufik83
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Janvier 2012
    Messages
    2 520
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 42
    Localisation : Maroc

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Janvier 2012
    Messages : 2 520
    Par d�faut
    Bonjour,

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    <script>var sess_communes = <?php if(isset($_SESSION['sess_communes'])) { echo $_SESSION['sess_communes']; } else '' ?></script>
    Dans le cas du bloc else PHP n'�crit rien et donc le r�sultat JS devient : var sess_communes= ce qui provoque une erreur de syntaxe.

    Rajoutez un echo dans le bloc else :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    var sess_communes = <?php if(isset($_SESSION['sess_communes'])) { echo $_SESSION['sess_communes']; } else echo '' ?></script>
    Ou bien mieux, utilisez la syntaxe alternative :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    <script>var sess_communes = <?=!empty($_SESSION['sess_communes'])?$_SESSION['sess_communes']:'';?></script>
    Citation Envoy� par sylvain257 Voir le message
    MAJ : Mon code ne semble pas accepter les op�rateurs de coalescence :/
    ..
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    var communes2 = <?php echo $_SESSION['sess_communes'] ?> ?? 'Salut';
    Non , c'est mal �crit parce que vous avez mis les ?? � l'ext�rieur du context PHP, essayez plut�t ceci :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    var communes2 = <?php echo $_SESSION['sess_communes'] ?? 'Salut'; ?>
    Ou bien :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    var communes2 = <?=$_SESSION['sess_communes']?? 'Salut'; ?>

  3. #3
    Membre confirm�
    Homme Profil pro
    Enseignant
    Inscrit en
    Novembre 2018
    Messages
    184
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 42
    Localisation : France, Essonne (�le de France)

    Informations professionnelles :
    Activit� : Enseignant

    Informations forums :
    Inscription : Novembre 2018
    Messages : 184
    Par d�faut
    Bonjour/soir,

    Effectivement, ca fonctionne parfaitement.

    Merci :-)

    Sylvain

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. [C#] Tester existence d'une variable de session
    Par IDNoires dans le forum ASP.NET
    R�ponses: 2
    Dernier message: 31/12/2004, 12h30
  2. Cr�ation d'une variable de session avec un ID
    Par PrinceMaster77 dans le forum ASP
    R�ponses: 4
    Dernier message: 18/10/2004, 10h28
  3. Effacer les variables de session
    Par glsn dans le forum ASP
    R�ponses: 2
    Dernier message: 12/12/2003, 13h42
  4. Variable de session
    Par Sadneth dans le forum ASP
    R�ponses: 6
    Dernier message: 14/11/2003, 11h12
  5. variable de session
    Par divableue dans le forum ASP
    R�ponses: 2
    Dernier message: 23/10/2003, 16h04

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