Glougloute |
Le 24/02/2007 à 23:22 |
|
 I love VIC |
Bonjour à tous :)
Voila, je suis encore et encore confronté à un nouveau problème. J'aimerais enlever le html d'une chaine :
<?php
$chaine = '<a href="index.php?p=page"><img src="/img/mon_image.jpg" title="titre"></a>';
$texte = eregi_replace("<a[^>.]*>","",$chaine);
echo $texte;
?>
Le problème c'est que ce bout de code m'affiche $chaine. J'aimerais afficher : /img/mon_image.jpg
Le problème c'est que je ne peux pas finir mon bout de code si je n'arrive pas à enlever le reste.
Merci pour votre aide. -- Je vous aiderai dans la mesure du possible ;) |
Anthony |
Le 25/02/2007 à 12:27 |
|
 Admin |
Salut Glougloute ;)
Essaie avec un preg_match() :
<?php
$chaine = '<a href="index.php?p=page"><img src="/img/mon_image.jpg" title="titre"></a>';
$tableau = array();
preg_match('`src="([^"]*)"`i', $chaine, $tableau);
print_r($tableau);
?>
-- 
|
Invité |
Le 01/03/2007 à 17:26 |
|
|
euh.....
pour enlever le html, strip_tags
Pour recuperer un seul src oui, la methode d'antho est bonne
pour recuperer plusieur src, il fait preg_match_all
si tu veux les deux dans nne seule chaine, alors il te faut un preg_replace complique
j'aimerais mieux cerner le probleme avant de me pencher dessus vraiment -- Compte invité - devenez membre pour disposer de votre compte personnalisé ! |
Glougloute |
Le 04/03/2007 à 11:59 |
|
 I love VIC |
Merci à vous. Cependant, j'ai pensé à un truc qui marche plutot bien mais je sais pas si c'est vraiment bien fait. Voici ce que j'ai écrit :
<?php
$test = '<a href="index.php?p=page"><img src="/img/mon_image.jpg" title="titre"></a>';
$imgsrc = explode("<img src=\"", $test);
$imgsrc2 = explode("\"", $imgsrc[1]);
echo $imgsrc2[0];
?>
Ce petit code marche plutôt bien, et il est assez simple. J'ai essayé le tien Antho, mais le problème c'est que ça m'affiche 15 000 trucs (je crois que ça affiche un tableau). Merci quand même de t'être fait chier pour ça  -- Je vous aiderai dans la mesure du possible ;) |
Anthony |
Le 04/03/2007 à 12:12 |
|
 Admin |
Oui j'ai affiché le tableau pour que tu récupères ensuite ce que tu veux dedans, en fait t'as une case qui satisfait tout le masque, l'autre qui va ne satisfaire que l'intérieur du masque, etc ... à toi de choisir.
Pour l'explode même si c'est possible que ce soit plus rapide je trouve ça affreux :p -- 
|
Glougloute |
Le 04/03/2007 à 12:18 |
|
 I love VIC |
En effet, je viens de capter qu'il fallait que j'écrive :
$chaine = '<a href="index.php?p=page"><img src="/img/mon_image.jpg" title="titre"></a>';
$tableau = array();
preg_match('`src="([^"]*)"`i', $chaine, $tableau);
print_r($tableau[1]);
Et voila, je peux virer mon explode ^^ Merci beaucoup. -- Je vous aiderai dans la mesure du possible ;) |
Anthony |
Le 04/03/2007 à 12:47 |
|
 Admin |
Le print_r() c'était juste pour te montrer ce que contenait le tableau, oublie, tu récupères ta chaîne avec $tableau[1] et t'en fais ce que tu veux ;) -- 
|