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

Bibliothèques et frameworks PHP Discussion :

[Smarty] Partager variable avec PHP dans un .tpl


Sujet :

Bibliothèques et frameworks PHP

Vue hybride

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

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2011
    Messages : 128
    Par défaut [Smarty] Partager variable avec PHP dans un .tpl
    Bonjour,

    Je cherche à assigner la valeur d'une variable Smarty à une variable PHP dans un fichier .tpl.

    J'ai tenté le code suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    {php}
    	$_SESSION['CADDIE_AMOUNT'] = $smarty->get_template_vars('total_price');
    	$_SESSION['ORDER_ID'] = $smarty->get_template_vars('id_caddie');
    	$_SESSION['CUSTOMER_ID'] = $smarty->get_template_vars('id_customer');
    {/php}
    Mais la variable $smarty n'est pas reconnu (ce qui peut paraître logique)

    J'ai donc essayé avec la syntaxe suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    {php}$_SESSION['CADDIE_AMOUNT'] = $this->get_template_vars('total_price');{/php}
    Mais j'obtiens le message d'erreur suivant :

    Fatal error: Using $this when not in object context in C:\...
    Utilisant Prestashop, je n'ai pas vraiment la possibilité de modifier autre chose que les fichiers tpl. C'est pourquoi je cherche à faire cette affectation dans un fichier tpl.

    Est-ce possible ou est-ce mission impossible ?

    Merci d'avance pour votre aide !

  2. #2
    Membre Expert
    Avatar de eric.pommereau
    Homme Profil pro
    Ingénieur, pôle cartographie
    Inscrit en
    Décembre 2004
    Messages
    715
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur, pôle cartographie
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2004
    Messages : 715
    Par défaut
    Bonjour,

    Je ne comprends pas exactement ce que tu veux faire MAIS :

    • L'utilisation de {php} est déconseillée (ce serait moi ce serait PROSCRIT !!).
    • Il te faut trouver le moyen de manipuler la partie PHP de PRESTASHOP qui passe les valeurs au template.


    D'un point de vue conceptuel c'est une hérésie ce que tu essaie de faire, le template est la vue, la vue ne fait ni de traitement des données ni de traitement métier...

    La -bonne- solution n'est pas du côté de Smarty.

    @+

Discussions similaires

  1. [MX] Envoyer une variable avec PHP
    Par flo48 dans le forum Flash
    Réponses: 38
    Dernier message: 22/09/2010, 10h51
  2. Insertion de variable avec guillemets dans une table SQL
    Par jnico21200 dans le forum Langage SQL
    Réponses: 5
    Dernier message: 17/03/2009, 14h36
  3. [Smarty] Affichage multicolonne avec PHP et Smarty
    Par sebix dans le forum Bibliothèques et frameworks
    Réponses: 7
    Dernier message: 30/12/2008, 15h05
  4. [MySQL] Récupérer variable avec espaces dans une liste déroulante
    Par Yagami_Raito dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 02/09/2007, 03h01
  5. [XSLT] Utilisation de XML avec PHP dans le cadre d'un site
    Par nicolas66 dans le forum Bibliothèques et frameworks
    Réponses: 15
    Dernier message: 06/11/2005, 22h39

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