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

Langage PHP Discussion :

[PHP-JS] utilisation d'une variable php dans du code javascript


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    176
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 176
    Points : 61
    Points
    61
    Par défaut [PHP-JS] utilisation d'une variable php dans du code javascript
    Bonjour,

    comme l'objet l'indique, je cherche à utiliser une variable php dans mon code écrit en javascript. Ici, en l'occurence, et pour l'exemple, l'afficher dans une fenêtre d'alerte.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <? $message=abc;echo $message;?>
    <script>
    var maFonction = function(message) {
      alert(message);
    }
    </script>
     
    <script>maFonction($message);</script>
    Y'a-t-il moyen de réaliser ça directement?
    sinon, comment faire autrement?

    Mathieu

  2. #2
    Membre à l'essai
    Profil pro
    Inscrit en
    Février 2006
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 32
    Points : 22
    Points
    22
    Par défaut
    Bonsoir,

    et si tu fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    <? $message=abc;echo $message;?>
    <script>
    var maFonction = function(message) {
      alert(message);
    }
    </script>
     
    <script>maFonction(<? echo $message ?>);</script>

  3. #3
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Points : 20 778
    Points
    20 778
    Par défaut
    plutôt

    Code php-mixte : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     <?php $message=abc;echo $message;?>
    <script type="text/javascript">
    var maFonction = function(message) {
      alert(message);
    }
    </script>
     
    <script type="text/javascript">maFonction('<?php echo $message ?>');</script>

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    176
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 176
    Points : 61
    Points
    61
    Par défaut
    Il reste un petit problème...
    voici comment je voudrais employer les choses:

    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
    <? $path="http://monsite.fr/";
    ?>
    <head>
    <script type="text/javascript">
    		function redirectionAvecDelai(finchemin)
    		{
    			window.setTimeout(redirectionSansDelai(finchemin), 5000);
    		}
     
    		function redirectionSansDelai(finchemin)
    		{	
    		lien="<?php echo $path; ?>"+finchemin;
    		alert(lien);
    		  window.location.href="<?php echo $path; ?>"+finchemin;
    		}
    </script>
    </head>
     
    <script> redirectionAvecDelai("accueil.php")</script>

    Avec ce code, la page voulue s'ouvre bien (http://monsite.fr/accueil.php), mais sans délai de 5 secondes... en fait, même en ne gardant qu'une fonction sur les deux, le navigateur produit une erreur... Voyez-vous pourquoi? que changer au code?

    Cordialement
    Mathieu

  5. #5
    Membre averti Avatar de makmaoui
    Profil pro
    Développeur Web
    Inscrit en
    Mai 2007
    Messages
    283
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2007
    Messages : 283
    Points : 368
    Points
    368
    Par défaut
    Essaye ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <script type="text/javascript">
    		function redirectionAvecDelai(finchemin)
    		{
    			window.setTimeout('redirectionSansDelai('+finchemin+')', 5000);
    		}
     
    </script>

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    176
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 176
    Points : 61
    Points
    61
    Par défaut
    Le code ressemblerait donc à ceci, n'est-ce pas?

    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
    <? $path="http://light72.free.fr/";
    ?>
    <head>
    <script type="text/javascript">
     
    		function redirectionSansDelai(finchemin)
    		{	
    		lien="<?php echo $path; ?>"+finchemin;
    		alert(lien);
    		  window.location.href="<?php echo $path; ?>"+finchemin;
    		}
     
     
    		function redirectionAvecDelai(finchemin)
    		{
    			window.setTimeout('redirectionSansDelai('+finchemin+')', 5000);
    		}
    </script>
    </head>
    petite phrase
     
    <script> redirectionAvecDelai('accueil.php')</script>

    Cette fois, il y a bien un délai de 5 secondes de marqué, mais ensuite, le navigateur produit une erreur (fatale!) et l'utilisateur n'est même pas rédirigé...
    Ai-je bien recopié? Une autre erreur?

    Mathieu

  7. #7
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Points : 20 778
    Points
    20 778
    Par défaut
    L'erreur ?

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    176
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 176
    Points : 61
    Points
    61
    Par défaut
    En fait, j'ai compris... grâce à un autre forum!
    window.setTimeout prend comme premier argument un string.
    Il faut donc écrire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    function redirectionAvecDelai(finchemin)
    		{
    			window.setTimeout("redirectionSansDelai('"+finchemin+"')", 5000);
    		}
    et ça fonctionne!!!

    Merci à tous

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Utilisation d'une variable php pour remplir un champ en JS
    Par darkterreur dans le forum Général JavaScript
    Réponses: 12
    Dernier message: 27/02/2012, 11h31
  2. Réponses: 14
    Dernier message: 25/11/2011, 14h15
  3. Utilisation d'une variable php dans popup javascript
    Par cybernetique dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 17/01/2008, 21h27
  4. Réponses: 8
    Dernier message: 13/07/2006, 10h04
  5. Réponses: 2
    Dernier message: 09/02/2006, 19h06

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