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

Symfony PHP Discussion :

[Twig] Inclure un fichier


Sujet :

Symfony PHP

  1. #1
    Membre du Club
    Inscrit en
    Mars 2011
    Messages
    79
    Détails du profil
    Informations forums :
    Inscription : Mars 2011
    Messages : 79
    Points : 45
    Points
    45
    Par défaut [Twig] Inclure un fichier
    Bonjour

    je veux savoir est ce qu'il est possible d'inclure un fichier .php dans mes pages twig.

    En fait au sein du répertoire qui contient mes fichiers .twig j'ai un fichier connectes.php qui contient un script php ( statistique ) et je voudrai l'inclure dans mes pages twig : j'ai essai avec ces deux syntaxe :

    1/
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <?php include('connectes.php'); ?>
    => rien n'a été changé

    2/
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    {% include('connectes.php') %}
    => Unable to find template "connectes.php" in SDZMarcheBundle:Marche: Public.html.twig at line 6.

    un coup de main SVP

  2. #2
    Membre averti

    Inscrit en
    Juin 2008
    Messages
    307
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 307
    Points : 364
    Points
    364
    Par défaut
    Pourquoi tu ne l'adapte pas pour qu'il soit directement utilisable dans symfony.

  3. #3
    Membre habitué Avatar de Avrel
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2010
    Messages
    118
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Avril 2010
    Messages : 118
    Points : 177
    Points
    177
    Par défaut
    La première chose a savoir, c'est que Symfony utilise une architecture 3 tiers qui permet de séparer la couche métier de celle de la vue et du model.

    Si tu as des traitements a faire en php, fais les dans le controlleur.

    Il ne faut exécuter aucun code dit "metier" dans ta vue.

  4. #4
    Membre averti
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2012
    Messages
    394
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2012
    Messages : 394
    Points : 347
    Points
    347
    Par défaut
    Tu veux inclure ce fichier dans ta vue Twig !! mais il contient quoi ce fichier connectes.php ?? comme il a dit #Avrel tu peux utiliser le code de ce fichier dans ton contrôleur et tu passe ce que tu veux dans ton twig :



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    public function monAction()
        {
            //le code de connectes.php
            ....
     
            return $this->render('TonNomBundle:taPageTwig.html.twig', array(
                'var' => $var,
                ....
                // ce que tu veux passer vers ta vue twig
     
            ));
        }

  5. #5
    Membre du Club
    Inscrit en
    Mars 2011
    Messages
    79
    Détails du profil
    Informations forums :
    Inscription : Mars 2011
    Messages : 79
    Points : 45
    Points
    45
    Par défaut
    merci de m'avoir répondu

    bon le fichier connectes.php contient un script php qui compte le nombre de visite de mon site web. j'ai déja essai de le mettre dans une action de mon controlleur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     public function statistiqueAction()
       {
     
       $connexion = mysqli_connect('localhost', 'root', 'motdepass');
       $db = mysqli_select_db($connexion, 'stats');
       $nb_visites = file_get_contents('/chemin/web/Statistique/pagesvues.txt');
       $nb_visites++;
       file_put_contents('/chemin/web/Statistique/pagesvues.txt', $nb_visites);
     
     
       return $this->render('SDZMarcheBundle:Marche:statistique.html.twig', array('nb_visites' => $nb_visites));
       }

    la vue statiqtique :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Nombre de pages vues : <strong> : {{nb_visites }} </strong><br/>

    mais le problème c'est que le nb-visite compte le nombre de fois de que la page statistque a été rechargé et nom pas les autres page du site . bon c'est pas pratique de mettre ce scripte dans tous mes action pour qu'elle soit interpréter par tous les vue

  6. #6
    Membre averti
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2012
    Messages
    394
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2012
    Messages : 394
    Points : 347
    Points
    347
    Par défaut
    eh bien tu ferais mieux de créer un bundle spécialement pour cela !! et tu l'affiche de puis les vues de SDZMarcheBundle par une seule ligne de code
    souviens toi qu'un bundle n'est rien d'autre qu'une brique parmi plusieurs de ton site

  7. #7
    Membre du Club
    Inscrit en
    Mars 2011
    Messages
    79
    Détails du profil
    Informations forums :
    Inscription : Mars 2011
    Messages : 79
    Points : 45
    Points
    45
    Par défaut
    merci

    je sais pas la procédure a suivre !! est ce que je devrai recréer tous les méthodes du SDZMarcheBundle dans ce bundle et faire des render pour chaque vue !!

  8. #8
    Membre averti
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2012
    Messages
    394
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2012
    Messages : 394
    Points : 347
    Points
    347
    Par défaut
    c'est très facile en fait le rôle de ton nouveu bundle sera de compter le nombre de visites c'est tout, sinon tu peux rendre la variable $nb_visites une variable globale de symfony2.

  9. #9
    Membre habitué Avatar de Avrel
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2010
    Messages
    118
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Avril 2010
    Messages : 118
    Points : 177
    Points
    177
    Par défaut
    Le plus simple c'est de creer une action dans ton controller qui va s'occuper que de ca.

    Admetton que dans ton DefaultController tu ais une action statAction()

    Ensuite depuis tes template tu fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    {% render "AcmeBlogBundle:Default:stat" %}
    C'est un peu le même principe que l'include en fait.

    Si t'as des paramètres a passer tu peux le faire de la manière suivante

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    {% render "AcmeBlogBundle:Default:stat" with {"id":entity.id} %}
    Creuse un peu ca, je pense que c'est la solution la plus simple.

Discussions similaires

  1. Inclure des Fichiers .XML et .PPT dans un version PhpBB 1.9
    Par DaddyP dans le forum XML/XSL et SOAP
    Réponses: 3
    Dernier message: 20/01/2006, 09h54
  2. [Configuration] Inclure un fichier .c dans une page PHP
    Par Korma dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 5
    Dernier message: 18/01/2006, 12h49
  3. [C#] inclure un fichier css
    Par elendila dans le forum ASP.NET
    Réponses: 2
    Dernier message: 12/08/2005, 15h21
  4. Inclure un fichier html
    Par krfa1 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 7
    Dernier message: 08/02/2005, 14h40
  5. [HTML] inclure un fichier...
    Par mohican13 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 17/01/2005, 17h23

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