recherche et remplacement dans le fichier meme - PHP - Programmation
Marsh Posté le 26-05-2004 à 11:59:41
j'ai lu ton script en diagonal, mais à priori, tu concatènes tes $result, et tu colles le résultats dans un fichier (fopen, fwrite and co...) qui peut être ton fichier original ou non
Marsh Posté le 26-05-2004 à 12:09:28
le truc c'est que j'aimerai que tout se fasse dans le meme fichier: la recherche, le remplacement puis l'affichage meme de la page.
Marsh Posté le 26-05-2004 à 13:14:32
Je ne te conseil pas d'intégrer ton code PHP dans l'html, tes balises {{..}} n'auraient alors plus aucun sens, enfin il me semble.
par contre pour ton code je dis bravo : belle monstruositée .
voila quelque chose d'un peu plus simple (juste un exemple) :
$t = "bla bla {{i1}} bla bla {{i2}}"; |
cela affiche donc :
bla bla <img src="i1.jpg" /> bla bla <img src="i2.jpg" /> |
Ahh que le PHP est laid
Marsh Posté le 26-05-2004 à 14:34:16
Haha merci
C'est vrai qu'il est bien laid et lourd mais vu que j'ai que quelques mois de PHP derrière moi je m'étonne moi même des fois de ce que je fais
Marsh Posté le 26-05-2004 à 11:23:32
Bonjour,
j'ai créer un pti script en php qui me permet de rechercher tous les mots se trouvant entre 2 accolades {{mot}} et qui le remplace par une url d'image du type <img src="mot.jpg">.
Or pour le moment le script est exterieur a la page html ou se trouve les mots a rechercher or j'aimerai l'incruster à l'interieur meme du html.
Je n'ai aucune idée pour le faire.
Voila mon script:
<?php
$url="page.html";
$recherche_debut="{{";
$recherche_fin="}}";
$end="</HTML>";
$fichier = fopen($url, "r" );
$ligne=fgets($fichier);
$result=NULL;
while(!ereg($end, $ligne)){
$posdeb=NULL;
$posfin=NULL;
$posdeb = strrpos($ligne, "{{" );
$posfin = strrpos($ligne, "}}" );
if ($posdeb>0 AND $posfin>0){
$mot_origine = substr($ligne, $posdeb-1, ($posfin-$posdeb)+2);
$mot = substr($ligne, $posdeb+1, (($posfin-$posdeb)-2));
$mot = "<img src=".$mot.".jpg></img>";
$result = str_replace ($mot_origine, $mot, $ligne);
}
$ligne=fgets($fichier);
}
echo $result;
fclose($fichier);
?>
Merci beaucoup pour votre aide.
Groskachou