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 :

Comment récupérer une variable javascript en php?


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    488
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 488
    Par défaut Comment récupérer une variable javascript en php?
    Bonjour,

    Je fais un test qui m'ajoute l'un ou l'autre fichier suivant la résolution de l'écran.

    dans un premier fichier je récupère la résolution de l’écran:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <script language="JavaScript">
     
    var w = screen.width;
    var h = screen.height;
     
    </script>
    et dans un autre je fais mon test:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    $width = "<script>document.write(w);</script>";
    $height = "<script>document.write(h);</script>";
    echo $width.",".$height;
     
    if (strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') !== false)
    {
        if (($width==1024) && ($height==768)){
     
            $this->headScript()->appendFile(PUBLIC_PATH . 'js/jquery/cars/cars3.ini.js', $type = 'text/javascript');
        }
    else {
     
    ....}
    }
    Vu que le php s’exécute côté serveur, php ne récupère pas la valeur de mes variables, comment faire pour résoudre ce problème?

    Merci d'avance

  2. #2
    Membre confirmé Avatar de LeGnome12
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2008
    Messages
    98
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2008
    Messages : 98
    Par défaut passage par hidden
    Salut,

    Je présume qu'il existe une navigation entre tes pages.
    Si c'est le cas, l'idée que je peux te suggérer "je l'accorde n'est pas très académique" c'est de créer dans ton HTML un input type hidden.

    Ensuite, tu appelles ton JavaScript qui met à jour le contenu du hidden. document.MyHiddenId.value=

    C'est l'idée, après il faut adapter.

  3. #3
    Membre éclairé Avatar de ilalaina
    Homme Profil pro
    Inscrit en
    Mai 2007
    Messages
    341
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Mai 2007
    Messages : 341
    Par défaut
    Bonjour,
    Tu peux faire comme ceci :
    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
     
    <?php
    if(strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') !== false)
    {
        $flagBrowser = 'NONIE';
    }
    else
    {
        $flagBrowser = 'IE';
    }
    ?>
    <script type="text/javascript">
    	// Contenu de ton fichier JS
        function maFonction(flagBrowser)
        {
            var w = screen.width;
            var h = screen.height;
            if(flagBrowser == 'IE' && w == 1024 && h == 768)
            {
                // ...
            }
        }
    </script>
    <?php
    $this->view->headScript()->captureStart();
    ?>
    // Appel de la fonction JS dans ton controleur ...
    maFonction('<?php echo $flagBrowser; ?>');
    <?php
    $this->view->headScript()->captureEnd();
    ?>

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    488
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 488
    Par défaut
    Voilà ce que je fais Ilalaina:

    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
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    /**** Carrousel 3D ****/
    $this->headScript()->appendFile(PUBLIC_PATH . 'js/jquery/carrousel/cloud-carousel.1.0.4.js', $type = 'text/javascript');
     
     
    if(strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') !== false)
    {
        $flagBrowser = 'NONIE';
    }
    elseif (strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE 6') !== false)
    {
        $flagBrowser = 'IE6';
    }
    elseif (strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE 7') !== false)
    {
    	$flagBrowser = 'IE7';
    }
    elseif (strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE 8') !== false)
    {
    	$flagBrowser = 'IE8';
    }
    ?>
    <script type="text/javascript">
    	// Contenu de ton fichier JS
        function maFonction(flagBrowser)
        {
            var w = screen.width;
            var h = screen.height;
     
            if(flagBrowser == 'IE6' || flagBrowser == 'IE7' || flagBrowser == 'IE8' && w == 1024 && h == 768)
            {
               <?php $this->headScript()->appendFile(PUBLIC_PATH . 'js/jquery/carrousel/carousel3.ini.js', $type = 'text/javascript');?>
            }
     
                        if (flagBrowser == 'IE6' || flagBrowser == 'IE7' && w != 1024 && h != 768)
    		{
    			<?php $this->headScript()->appendFile(PUBLIC_PATH . 'js/jquery/carrousel/carousel2.ini.js', $type = 'text/javascript'); ?>
    		}
     
                        if (flagBrowser == 'IE8' && w != 1024 && h != 768)
    		{
    			<?php $this->headScript()->appendFile(PUBLIC_PATH . 'js/jquery/carrousel/carousel.ini.js', $type = 'text/javascript'); ?>
    		}
     
                        if (flagBrowser == 'NONIE')
    		{
    			<?php $this->headScript()->appendFile(PUBLIC_PATH . 'js/jquery/carrousel/carousel.ini.js', $type = 'text/javascript'); ?>
    		}
        }
    </script>
    <?php
     
     
    $this->headScript()->appendFile(PUBLIC_PATH . 'js/jquery/carrousel/jquery.mousewheel.js', $type = 'text/javascript');
    /**** Carrousel 3D ****/
    et dans mon contrôleur:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    $this->view->headScript()->captureStart();
     
    ?>
    <script type="text/javascript">
      maFonction('<?php echo $flagBrowser; ?>');
    </script>
    <?php
        $this->view->headScript()->captureEnd();
    Malheureusement mon carrousel ne s'affiche pas du tout!

    Je veux juste lui dire que quand la résolution est en 1024 x 768 il me charge un fichier...

    une autre solution?

  5. #5
    Membre éclairé Avatar de ilalaina
    Homme Profil pro
    Inscrit en
    Mai 2007
    Messages
    341
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations forums :
    Inscription : Mai 2007
    Messages : 341
    Par défaut
    C'est que javascript ne peut pas interpreter
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $this->headScript()->appendFile
    alors que tu le mets dans du javascript

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    488
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 488
    Par défaut
    que faire alors?

Discussions similaires

  1. Comment récupérer une variable javascript dans PHP
    Par pierrot10 dans le forum Langage
    Réponses: 1
    Dernier message: 08/10/2010, 06h08
  2. [PHP-JS] comment récupérer une valeur javascript
    Par mioke dans le forum Langage
    Réponses: 5
    Dernier message: 25/08/2008, 12h19
  3. [PHP-JS] Récupérer une variable Javascript en PHP
    Par Gamil dans le forum Langage
    Réponses: 3
    Dernier message: 07/12/2007, 13h40
  4. [PHP-JS] Récupérer une variable javascript
    Par -Neo- dans le forum Langage
    Réponses: 1
    Dernier message: 01/06/2007, 16h52
  5. Réponses: 2
    Dernier message: 05/05/2007, 23h11

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