Pb saut de ligne et espace dans balise Meta

Papillon007

Nouveau WRInaute
Bonjour à tous,

Voila, aprés plusieurs heures, je ne suis pas arrivé à résoudre ce problème qui peut paraitre assez simple pour certain :(.

J'ai une base de données ou je récupère à l'aide d'une variable le texte d'une actualité que j'utilise dans une balise Meta avec la prise en compte des 256 premiers caractères.

Code:
<meta name="dc.description" content="<?php echo CorrectDesc($Contenu_News); ?>" />

Ma fonction CorrectDesc est présente car le texte récupéré contient des balises HTML de tous les types et elle prend en charge que les 256 caractères.

Ce que je ne comprend pas, ce que lorsque je regarde en mode code ma feuille, des sauts de ligne et des espaces sont présent dans le texte de la balise dc.description :(

Par exemple voici un texte issu de la base :

Code:
<p align="justify">le forum de Webrankinfo.com est vraiment trés bien et agréable </p>
                          <p align="justify"><img src="../Mes_News/Ma_Photo_1.jpg" width="214" height="193" hspace="5" align="left" />De trés nombreux fils de discussions sont présent et énormément d'information sont disponibles</p>
                          <p align="justify"><img src="../Mes_News/Ma_Photo_1.jpg" width="214" height="193" hspace="5" align="left" />Avec un design sympathique,  le forum est intuitif, rapide et bien organisé. De trés nombreux thèmes sont abordés et l'ambiance est trés conviviale </p>

Le saut de ligne entre les balises
Code:
<p></p><p></p>
ainsi que les blancs sont présents dans la base d'ou le problème.

En utilisant (desolé si la prog est un peu limite) la fonction suivante je n'arrive pas à supprimer saut de ligne et blanc :

Code:
function CorrectDesc($Desc)
{
$nb = 247;

        $Desc= substr($Desc, 0,500);
        $position_p = strrpos($Desc,"</p>"); 
		$texte= substr($Desc, 0, $position_p);
        $texte1 = substr($Desc, $position_p, 500); 
		$Desc1= trim($texte). trim($texte1);
		$Desc1= strip_tags($Desc1);
        
		if (strlen($Desc) > $nb) 
    {
	$position_espace = strrpos($Desc1," "); 
    $texte = substr($Desc1, 0, $position_espace); 
    $Desc= $texte."..."; 
    }
    return $Desc; 
}

Voici le résultat dans la balise méta dc description :

Code:
"Le forum de Webrankinfo.com est vraiment trés bien et agréable 
                         ..."

Si quelqu'un peut m'aider car la je ne comprend plus rien. Le pire est que si dans ma feuille HTML j'appelle ma fonction, le texte est bien sur une ligne !

Merci d'avance à tous
 

Papillon007

Nouveau WRInaute
je vais essayer !

Zut marche pas !

je ne sais pas pourquoi, mais meme en utilisant :

Code:
trim($texte)

il conserve les espaces est interprète un saut de ligne lorsque des balises paragraphe sont présentes.

Code:
<p>Il fait super beau.</p>
          <p>Il fait super beau</p>

devient dans la balise Meta avec le fonction strip_tags($Texte1)

Code:
Il fait super beau.
           Il fait beau.

Mais dans la page elle même, si je fais :

Code:
<?php echo $Texte1 ?>

J'ai bien : Il fait super beau. Il fait beau.
 

Discussions similaires

Haut