SPIP-Contrib

SPIP-Contrib

عربي | Deutsch | English | Español | français | italiano

273 Plugins, 191 contribs sur SPIP-Zone, 42 visiteurs en ce moment

Accueil du site > Documentation > Archives documentation > FAQ - Les questions fréquentes > Comment récupérer une « variable spip » en une variable PHP ?

Comment récupérer une « variable spip » en une variable PHP ?

27 avril 2003 – par Filifab – 15 <blink style='color:red;'>public|spip|ecrire:commentaires</blink>

5 votes

Ceci est une ARCHIVE, peut-être périmée. Vérifiez bien les compatibilités !

Il suffit simplement de faire :

<?php $soustitre = '[(#SOUSTITRE|texte_script)]'; ?>

Attention : C’est la seule technique opérationnelle, pas de ", d’addslashes ou autres joyeusetés sous peine de plantage voire de faille dans la sécurité.

Retour en haut de la page

Vos commentaires

  • Le 5 août 2009 à 15:53, par pipol En réponse à : Comment récupérer une « variable spip » en une variable PHP ?

    Même avec le heredeoc ZORG la je n’arrive pas a récupérer mon LOGO_DOCUMENT.

    Pourtant je n’ai aucun souci à récuperer le titre ou autre chose concernant ce doc :/

    Je suis en train de faire ce site :
    http://www.gallarddidierarchitecte.fr/spip.php?page=accueil&lang=fr

    Je fais apparaitre mes articles dans des conteneurs avec du javascript sur un onclick sur le div class=block. J’ai reussis sans probleme a appeler le texte et le titre de l’article avec ce code :

    <div class="block" onclick="getarticle('[(#TITRE|texte_script)]','[(#TEXTE|inserer_attribut{'class',article}|texte_script)]',this,'LES PHOTOS')">

    Et la function javascript associé :

    <script type="text/javascript">

           //ARTICLES:
           function getarticle(titre,texte,elementthis,photo){
         
                   contit = document.getElementById("box_titre");
                   contit.innerHTML = "";
                   contit.innerHTML += titre;
                 
                   contart = document.getElementById("box_article");
                   contart.innerHTML = "";
                   contart.innerHTML += texte;      
                         
                   contpho = document.getElementById("box_photo");
                   contpho.innerHTML = "";
                   contpho.innerHTML += photo;
                 
                   //change la couleur du block article
                   elementthis.style.backgroundColor="#b8e79f";
                         
         
           }  
    </script>

     

    Mais mon souci c’est maintenant d’appeler les LOGO_DOCUMENT lié à l’article Si je remplace carrement dans la fonction getarticle, ce que j’ai appeler la pour l’exemple MES PHOTOS par une boucle spip cela ne fonctionne pas. j’avais penser alors mettre la boucle carrément dans le script et aller chercher les bon document avec une variable javascript definis par ID_ARTICLE, seulement vu que la boucle s’execute avant le javascript impossible.

    je me suis donc tourné vers une autre idée utiliser du PHP. Et j’ai insérer ce code dans ma BOUCLE article

            <?php $id = 'num'.'[(#ID_ARTICLE|texte_script)]'; ?>      
                                                     
            <BOUCLE_photo(DOCUMENTS){id_article}{extension==jpg|png|gif}>
                                             
                      <?php
                       $$id .= '[(#TITRE|texte_script)]';
                       ?>
                                               
             </BOUCLE_photo>

             <div class="block" onclick="getarticle('[(#TITRE|texte_script)]','[(#TEXTE|inserer_attribut{'class',article}|texte_script)]',this,'<?php echo $num[(#ID_ARTICLE|texte_script)]; ?>')">

    Et la miracle sa marche pour tout #TITRE, #FICHIER etc..!!!..Mais ooh malheur sauf pour la balise #LOGO_DOCUMENT qui fait bugger le site

    Il y a deux document associé à l’ article (REA./EQUIP/2003 cheaume etc..) et on vois bien leur titre apparaitre en haut. Mais si je remplace titre par logo c’est foutu .. Je ne comprend aps ce qui bug..

    Peu être c’est impossible et je dois partir dans une autre direction ??
    Si quelqun a une idée.. Merci d’avance.

    Répondre à ce message

  • Le 22 juin 2009 à 17:00, par Christophe Sevin En réponse à : Comment récupérer une « variable spip » en une variable PHP ?

    Bonjour,

    Je débute en spip. Je suis en stage pour 2 mois encore et j’ai besoin de votre aide.

    J’ai parcouru le net à la recherche d’une reponse à ma question mais en vain. Je suis tomber sur ce topic qui est exactement ce que je cherche mais aucune des réponse ne semble fonctionner. Voila ce que j’ai essayé pour récupérer ma variable de SPIP à PHP :

    <?php $titre #TITRE ; ?>
    <?php $titre '#TITRE' ?>
    <?php $titre = [(#TITRE|texte_script)] ; ?>
    <?php $titre '[(#TITRE|texte_script)] '?>
    <?php $titre = <<<ZORG
    _ [(#TITRE|texte_script)]
    _ ZORG;
    _ echo $titre;
    _ ?>

    Toutes ces solution renvoie l’erreur « Parse error : parse error in c :\program files\easyphp1-8\www\spip2.0.8\ecrire\public.php(174) : eval()’d code ».

    Je fonctionne sous SPIP2.0.8 peut être est-ce du à cela.
    Si quelqu’un à une piste de résolution je suis preneur.
    Je vous remercie par avance.
    Spip-contrib et tous les contributeurs en général font un bouleau extra ordinaire.
    Christophe Sevin

    • Le 23 juin 2009 à 10:42, par Christophe Sevin En réponse à : Comment récupérer une « variable spip » en une variable PHP ?

      Bonjour tout le monde,

      Je tiens a m’excuser de mon précédent message car je me suis rendu compte que mes tests n’affectaient pas la bonne page. Ainsi, j’ai résolu mon problème (non sans mal ..) grâce à vos conseils. La seule syntaxe à utiliser et qui marche parfaitement est donc bien :

      <?php
      _  $mavariable 
      '[(#TITRE|texte_script)]';
      _ ?>

      Encore une fois merci à tous les contributeurs de ce site.
      Bonne journée.
      Christophe Sevin

    Répondre à ce message

  • Le 25 avril 2004 à 21:57, par dani En réponse à : Ne marche pas avec les logos ?

    Sauf erreur de ma part, cette contrib ne marche pas avec des Logos, qui sont des balises calculées ou interviennent des ’" et des «  » imbriqués.

    Par exemple :
    [(#LOGO_ARTICLE_RUBRIQUE||text_script)]
    ne marche pas.

    Je suis en train de tenter de faire un filtre avec serialize et addslashes, mais sans succès pour l’instant.

    • Le 26 avril 2004 à 13:32, par BoOz En réponse à : > Ne marche pas avec les logos ?

      C’est l’url que tu veux ?

      $url='[(#LOGO|fichier|texte_script)]'

    • Le 7 janvier 2005 à 16:49, par Florent En réponse à : > Ne marche pas avec les logos ?

      La seule, l’unique façon de faire, pour s’affranchir de tous les problèmes de guillemets, c’est d’utiliser l’ésotérique syntaxe PHP HereDoc :

      au lieu de :

      <?php $toto = '[(#SOUSTITRE|texte_script)]'; ?>

      faire :

      <?php
      $toto= <<<ZORG
      [(#SOUSTITRE|texte_script)]
      ZORG;
      ?>

      Et là ça marche partout (le seul soucis est de faire attention avec les éditeurs Windows, car la dernière ligne ’ZORG ;’ ne doit pas contenir de caractère \r en fin de ligne. Pour ça, migrez-donc en Linux, il est temps !)

    Répondre à ce message

  • Le 31 juillet 2003 à 05:49, par Frédéric Poncet En réponse à : > Comment récupérer une « variable spip » en une variable PHP ?

    Peut-on créer un champ réservé aux scripts, dans la table articles (par exemple) et faire en sorte que ce champ soit éditable dans l’interface SPIP ?

    (P.S. la création de ce champ avec phpMyAdmin ne suffit pas à le faire prendre en compte par l’interface SPIP)

    • Le 23 décembre 2004 à 17:45, par alain bourdeau En réponse à : > Comment récupérer une « variable spip » en une variable PHP ?

      Bonjour, je suis à la recherche de cette solution moi aussi.

      Dans le « compilateur » SPIP quelqu’un connait-il ou et sous quel nom le « select spip_aticle » est réalisé. Et donc ou et sous quelle forme se trouve les champs de la table article.

      Ma recherche est pour ajouter un champs prix et un champs quantité à un article qui serait pour mon application une revue ou un livre.
      Merci

    Répondre à ce message

  • Le 21 mai 2003 à 17:17, par ? En réponse à : > Comment récupérer une « variable spip » en une variable PHP ?

    et pour faire l’inverse ???

    variable PHP en SPIP
    ou au moiin utilisé dans une boucle spip

    • Le 22 mai 2003 à 12:47, par thomas En réponse à : pas possible

      puisque SPIP est d’abord exécuté :-(

    • Le 26 juillet 2003 à 18:53, par Nemo En réponse à : Re : pas possible

      En effet, on ne peut pas. Mais une solution de remplacement, qui peut faire l’affaire dans certains cas, est expliquée ici :
      http://snurl.com/1w51

      Nemo

    • Le 11 janvier 2004 à 14:51, par ? En réponse à : > Re : pas possible

      Heu j’aurais bien aimé avoir la soluce proposée mais le lien ci-dessus est mort ! :(
      Serait-il possible de redonner la solution qui permet dans certains cas de récupérer dans une vaiable SPIP la valeur d’une variable PHP ?

    • Le 12 avril 2004 à 15:23, par nycola En réponse à : > Re : pas possible

      Si l’on veut utiliser une variable PHP pour sélectionner une rubrique (par exemple), il y a une solution.

      Par exemple, ma variable PHP $mon_numero contient une valeur (résultant d’un calcul ou passée dans l’URL). Je veux sélectionner les articles dont l’id_rubrique est égal à $mon_numero.

      <BOUCLE_articles(ARTICLES){id_rubrique}>
      <?php
      if ($id_rubrique==$mon_numero) {
      ?>
      contenu de la boucle (code HTML avec balises SPIP)
      <?php
      }
      ?>
      </BOUCLE_articles>
    • Le 25 avril 2004 à 22:08, par dani En réponse à : Quelques pistes pour passer de php à spip

      Il y a un intéressant fil de discussion sur le sujet sur les forums du site de SPIP, avec deux propositions, une pour définir une balise qui provoque que ce code php soir exécuté au moment de calculer le squelette, et une deuxième pour passer des variables de l’URL et des valeurs de balises dans le contexte des squelettes spip.

      J’ai testé la deuxième, ça marche et c’est puissant.

    Répondre à ce message

  • Le 4 août 2003 à 14:33, par Spidermotard En réponse à : > Comment récupérer une « variable spip » en une variable PHP ?

    Bonjour,

    Juste une petite précision qui évitera aux moutons comme moi de perdre une heure ou deux :o)

    Si vous récupérez une variable qui ne fonctionne pas avec les filtres, alors il ne faut pas rajouter le filtre. Hey oui, c’est con mais je suis tombé en plein dedans.

    <?php $id_secteur = ' [(#ID_SECTEUR)] '; ?>

    Merci pour le tuyau.

    Répondre à ce message

Répondre à cet article

Qui êtes-vous ?

Pour afficher votre trombine avec votre message, enregistrez-la d'abord sur gravatar.com (gratuit et indolore) et n'oubliez pas d'indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici Les choses à faire avant de poser une question (Prolégomènes aux rapports de bugs. )
Ajouter un document

Retour en haut de la page

Ça discute par ici

  • Typographie avancée

    3 mars 2010 – <blink style='color:red;'>public|spip|ecrire:commentaires</blink>

    « Typographie avancée » active automatiquement un grand nombre d’automatismes destinés à affiner la typographie des textes produits par SPIP. Nécessite PHP 5 au minimum. « Typographie avancée » est l’adaptation, pour SPIP, de la classe « PHP Typography », (...)

  • Plugin Convertisseur

    24 février 2008 – 15 <blink style='color:red;'>public|spip|ecrire:commentaires</blink>

    Convertit différents formats d’articles (wiki, docx, pdf, etc..). en format SPIP (texte avec les raccourcis typographiques SPIP)

  • Thèmes pour l’interface privée

    22 février 2010 – <blink style='color:red;'>public|spip|ecrire:commentaires</blink>

    Un sélecteur d’interfaces graphiques pour l’espace privé de SPIP 2.1. Une petite collection d’interfaces est livrée avec le plugin. Ce plugin permet à chaque participant à l’espace privé de sélectionner sa propre interface graphique en fonction de ses (...)

  • Albums

    8 novembre 2011 – 29 <blink style='color:red;'>public|spip|ecrire:commentaires</blink>

    Ce plugin permet d’afficher une ou plusieurs galeries d’images au fil du texte, dans les articles et ailleurs. Qui rédige un récit de voyage, par exemple, aimerait pouvoir illustrer son article de plusieurs petites séries de photos, une par jour. Or (...)

  • Navigation AJAX

    31 janvier – 17 <blink style='color:red;'>public|spip|ecrire:commentaires</blink>

    Ce plugin permet de modifier automatiquement une parties des liens internes de manière à ce qu’ils ne déclenchent pas un chargement complet de la page cible, mais un chargement en AJAX de certains éléments spécifiés à l’avance. Il permet aussi de (...)