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 :

Preg_replace et affichage de variable [RegEx]


Sujet :

Langage PHP

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6
    Points : 5
    Points
    5
    Par défaut Preg_replace et affichage de variable
    Bonjour, voici mon soucis en PHP (sur lequel je me prends la tete depuis 3 heures)

    1- j'ai un fichier url.php ou sont definies tous les ulrs de type $pagefr21 ="page-blabla.html";

    2- j'ai un script qui va me chercher des infos dans ma base de donnée

    voici les infos de la base :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    La gestion de patrimoine ne se décide pas selon une conduite répond parfaitement aux aléas des marchés financiers 
    par une <a href={pagefr21} class="inside bold">philosophie d’investissement</a> rigoureuse et responsable.<br>
    voici le script php après requete sur ma base, $contenu étant ce que je cherche a afficher :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    include "url.php";
    $patterns[0] = '/\{/';
    $patterns[1] = '/\}/';
    $replacements[0] = '"$';
    $replacements[1] = '"';
    $contenu = preg_replace($patterns, $replacements, $contenu);		
    echo $contenu;
    le but du script est de recupérer {pagefr21} dans la base , de le remplacer par $pagefr21 et d'afficher la variable qui est contenu dans url.php


    pour le moment le script remplace bien le {pagefr21} par $pagefr21 mais ne va pas chercher la variable dans url.php
    il se contente d'afficher $pagefr21...


    surement qqchose que je ne fais pas correctement
    si vous avez des idées je suis preneur...

    j'espere avoir ete clair dans mes explications
    merci

  2. #2
    Expert confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2003
    Messages
    3 549
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 549
    Points : 4 625
    Points
    4 625
    Par défaut
    Essaie ça

    $contenu = preg_replace('#{([^}]+)}#e', '$$1', $contenu);
    Boost ftw

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6
    Points : 5
    Points
    5
    Par défaut
    superbe
    ca marche
    merci merci merci


    mon calvaire est enfin fini

  4. #4
    Membre émérite
    Avatar de Nesmontou
    Homme Profil pro
    Architecte logiciel
    Inscrit en
    Septembre 2004
    Messages
    1 612
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Architecte logiciel
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2004
    Messages : 1 612
    Points : 2 969
    Points
    2 969
    Par défaut
    N'oublie le ch'ti ;-)
    Si vous ne pouvez expliquer un concept à un enfant de six ans, c'est que vous ne le comprenez pas complètement. Albert EINSTEIN

    F.A.Q. : Java, PHP, (X)HTML / CSS

    N'oubliez pas de cliquer sur le bouton Résolu en bas de page quand vous avez obtenu une solution à votre problème

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6
    Points : 5
    Points
    5
    Par défaut
    Re.

    autre petit soucis pour le meme script :

    j'essaye de remplacer ceci qui est dans ma base :

    <a href="{c}/prospectus.pdf" class="inside bold" target="_blank">Prospectus et règlement</a>

    par

    <a href="chemin-repertoire/prospectus.pdf" class="inside bold" target="_blank">Prospectus et règlement</a>

    j'ai ecris :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $contenu = str_replace('{c}', 'chemin-repertoire/', $contenu);
    ou
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $contenu = @preg_replace('{c}', 'chemin-repertoire/', $contenu);
    mais cela ne marche pas...

    avez vous une idée ??

  6. #6
    Membre chevronné
    Avatar de ska_root
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    1 203
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Service public

    Informations forums :
    Inscription : Août 2005
    Messages : 1 203
    Points : 1 839
    Points
    1 839
    Par défaut
    ben je ne vois pas d'ou vient l'erreur...
    moi cela fonctionne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    $chaine = '<a href="{c}/prospectus.pdf" class="inside bold" target="_blank">Prospectus et règlement</a>';
    echo "<h3>avant</h3>";
    echo htmlspecialchars($chaine);
    $chaine = str_replace('{c}','chemin-repertoire',$chaine);
    echo "<h3>après</h3>";
    echo htmlspecialchars($chaine);

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Décembre 2004
    Messages : 6
    Points : 5
    Points
    5
    Par défaut
    effectivement cela marche correctement
    mon erreur venait d'un autre paramètre...

    merci beaucoup pour ton aide !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] pb d'affichage de variable
    Par xtiand4 dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 16/06/2006, 10h07
  2. Affichage de variables de SESSION
    Par yoan_111 dans le forum ASP
    Réponses: 2
    Dernier message: 24/04/2006, 11h15
  3. problème d'affichage de variable
    Par sam01 dans le forum Langage
    Réponses: 1
    Dernier message: 14/04/2006, 00h20
  4. Réponses: 3
    Dernier message: 02/03/2006, 19h22
  5. Affichage menu variable
    Par mosquitout dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 15/12/2005, 14h50

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