Précédent   Forum des professionnels en informatique > PHP > Langage > Regex
Regex Forum d'entraide sur les expressions rationnelles PHP. Avant de poster -> FAQ regex, Cours de regex et Sources de regex
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 20/09/2005, 14h07   #1
Invité de passage
 
Inscription : décembre 2004
Messages : 6
Détails du profil
Informations forums :
Inscription : décembre 2004
Messages : 6
Points : 2
Points : 2
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 :
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 :
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
xperienss est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/09/2005, 15h08   #2
Expert Confirmé Sénior
 
Homme Mathias Gaunard
Ingénieur développement logiciels
Inscription : décembre 2003
Messages : 3 543
Détails du profil
Informations personnelles :
Nom : Homme Mathias Gaunard
Localisation : France, Essonne (Île de France)

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

Informations forums :
Inscription : décembre 2003
Messages : 3 543
Points : 4 408
Points : 4 408
Essaie ça

$contenu = preg_replace('#{([^}]+)}#e', '$$1', $contenu);
loufoque est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/09/2005, 15h25   #3
Invité de passage
 
Inscription : décembre 2004
Messages : 6
Détails du profil
Informations forums :
Inscription : décembre 2004
Messages : 6
Points : 2
Points : 2
superbe
ca marche
merci merci merci


mon calvaire est enfin fini
xperienss est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/09/2005, 18h17   #4
Modérateur
 
Avatar de Nesmontou
 
Homme Benjamin PREVOT
Architecte de système d'information
Inscription : septembre 2004
Messages : 1 571
Détails du profil
Informations personnelles :
Nom : Homme Benjamin PREVOT
Âge : 30
Localisation : France, Nord (Nord Pas de Calais)

Informations professionnelles :
Activité : Architecte de système d'information
Secteur : Finance

Informations forums :
Inscription : septembre 2004
Messages : 1 571
Points : 2 526
Points : 2 526
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
Nesmontou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/10/2005, 12h48   #5
Invité de passage
 
Inscription : décembre 2004
Messages : 6
Détails du profil
Informations forums :
Inscription : décembre 2004
Messages : 6
Points : 2
Points : 2
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 :
$contenu = str_replace('{c}', 'chemin-repertoire/', $contenu);
ou
Code :
$contenu = @preg_replace('{c}', 'chemin-repertoire/', $contenu);
mais cela ne marche pas...

avez vous une idée ??
xperienss est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/10/2005, 12h56   #6
Membre Expert
 
Avatar de ska_root
 
Homme
Développeur informatique
Inscription : août 2005
Messages : 1 179
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 42
Localisation : France

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

Informations forums :
Inscription : août 2005
Messages : 1 179
Points : 1 580
Points : 1 580
ben je ne vois pas d'ou vient l'erreur...
moi cela fonctionne :
Code :
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);
__________________
http://cdemarche.developpez.com/

Tu as la réponse à ta question ? N'oublies pas le petit en bas à gauche de ton message...
ska_root est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/10/2005, 13h26   #7
Invité de passage
 
Inscription : décembre 2004
Messages : 6
Détails du profil
Informations forums :
Inscription : décembre 2004
Messages : 6
Points : 2
Points : 2
effectivement cela marche correctement
mon erreur venait d'un autre paramètre...

merci beaucoup pour ton aide !
xperienss est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 15h38.


 
 
 
 
Partenaires

Hébergement Web