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

Zend Framework PHP Discussion :

Problème de constante avec Zend et JS


Sujet :

Zend Framework PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2009
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 37
    Localisation : Maroc

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2009
    Messages : 6
    Par défaut Problème de constante avec Zend et JS
    Bonjour,

    Dans mon projet j'ai besoin d'utiliser des constante, j'ai procédé comme suit :

    1----dans le fichier Bootstrap.php :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    protected function _initConstants()
    {
        $registry = Zend_Registry::getInstance();
        $registry->constants = new Zend_Config( $this->getApplication()->getOption('constants') );
    }
    2---Dans mon fichier application.ini, je définis ma constante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    constants.PNO = Propriétaire
    3---Depuis ma page PHP, j'arrive à récupérer ma constante avec ce code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $myvar=Zend_Registry::getInstance()->constants->PNO;
    Mon souci est comment le récupérer depuis un fichier JS

    Si vous pouvez m'aider je vous serais très reconnaissante.

  2. #2
    Membre éprouvé
    Homme Profil pro
    Ingenieur BI - Dev Web Senior
    Inscrit en
    Décembre 2009
    Messages
    118
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Ingenieur BI - Dev Web Senior

    Informations forums :
    Inscription : Décembre 2009
    Messages : 118
    Par défaut
    Bonjour @learnmore,

    Dans ton view script (fichier .phtml) tu fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <script type="text/javascript">
    var myvar = "<?php echo Zend_Registry::getInstance()->constants->PNO; ?>";
    </script>
    Et tu exploite ta variable myvar dans tes scripts JS
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <script type="text/javascript">alert(myvar);</script>
    Enjoy!

  3. #3
    Nouveau membre du Club
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2009
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 37
    Localisation : Maroc

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2009
    Messages : 6
    Par défaut Merci
    Merci abenlahsen pour votre réponse, voilà ce que j'ai fait mais j'ai pas encore réussi :

    dans ma page .phtml j'ai mis ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <script type="text/javascript">
    var myvar = "<?php echo Zend_Registry::getInstance()->constants->PNO; ?>";
    </script>
    et dans mon fichier .js :

    Code js : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if (jQuery('input[name="souscripteur"]').attr('value') == "Propriétaire") {
    		alert(myvar);
    		jQuery('.line-formuleSouhaitee').hide();
    	}

    Mais j'ai pas l'alert; est ce que j'ai raté quelque chose

  4. #4
    Membre éprouvé
    Homme Profil pro
    Ingenieur BI - Dev Web Senior
    Inscrit en
    Décembre 2009
    Messages
    118
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Ingenieur BI - Dev Web Senior

    Informations forums :
    Inscription : Décembre 2009
    Messages : 118
    Par défaut
    Je t'en prie @learnmore

    Le fait de ne pas avoir l'alert implique que jQuery n'a pas trouvé ton input nommé souscripteur! Il faut d'abord être sûr que jQuery trouve ton input

    Essaye ce bout de code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    jQuery(document).ready(function() {
    if (jQuery('input[name="souscripteur"]').attr('value') == "Propriétaire") {
    alert(myvar);
    jQuery('.line-formuleSouhaitee').hide();
    }
    });
    Bon courage.

  5. #5
    Nouveau membre du Club
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2009
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 37
    Localisation : Maroc

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2009
    Messages : 6
    Par défaut Merci
    Bonjour,

    En fait si je mis ma fonction dans le même fichier PHP j'arrive à voir l'alert mais jQuery('.line-formuleSouhaitee').hide(); ne marche pas.

    Mais si je déplace ma fonction dans un fichier .js, j'arrive pas à l'appeler.

    Voici mon code :
    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
     
    <head>
    <script type="text/javascript" >
    function test(myvar1,myvar2)
    {
    		if (myvar1 == myvar2) 
    		{
    			alert(myvar1);
    			jQuery('.line-formuleSouhaitee').hide();
    		}
    }
    var myvar1 = "<?php echo Zend_Registry::getInstance()->constants->PNO; ?>";
    var myvar2= "<?php echo $this->session->postData['qualite_souscripteur'];?>";
    test(myvar1,myvar2);
    </script>
    </head>
    SI je déplace la fonction test dans un fichier .js et je l'appel ça marche pas

    SVP pouvez vous me donner un coup de main

  6. #6
    Nouveau membre du Club
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2009
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 37
    Localisation : Maroc

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2009
    Messages : 6
    Par défaut Merci
    Salam,

    Je vous remercie énormément abenlahsen pour votre aide.

    C'estbon mon problème est résolu, en fait ce qui ne marchait pas c'est que mon fichier .js a été déclaré en bas alors que j'appel la fonction en haut.


    Merci une autre fois.

Discussions similaires

  1. Problèmes en débutant avec Zend Framework
    Par Greg71 dans le forum MVC
    Réponses: 2
    Dernier message: 14/12/2009, 23h36
  2. Réponses: 6
    Dernier message: 16/09/2008, 20h35
  3. Problème avec le Tutoriel Débuter avec Zend Framework
    Par ZIED dans le forum Zend Framework
    Réponses: 4
    Dernier message: 21/12/2007, 19h46
  4. [View] Problème d'accents avec zend framework
    Par fanette dans le forum Autres composants
    Réponses: 3
    Dernier message: 14/08/2007, 16h17
  5. Problème de base de données avec Zend exception PDO
    Par websurfeur dans le forum Zend Framework
    Réponses: 8
    Dernier message: 20/04/2007, 16h49

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