limiter nombre de caractère d'une phrase

Consultez la formation à Google Analytics de WebRankInfo / Ranking Metrics

still
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 3
Inscription: 9 Sep 2004

limiter nombre de caractère d'une phrase

Message le Jeu Sep 09, 2004 12:40

hello, je voudrais faire apparaître via une base de donnée tous les titres de mes articles de journaux.
pour cela j'indique ce code:
<?
$db = mysql_connect("base", "login", "pass");
mysql_select_db("login",$db); $sql = "SELECT * FROM journal where id=1";
$req = mysql_query($sql) or die("Erreur SQL !<br>".$sql."<br>".mysql_error());
while($data = mysql_fetch_array($req))
{

echo "$data[titre1]<br />$data[titre2]";
}
mysql_close();
?>

jusque là aucun problème MAIS je souhaiterai limiter le nombre de caractère de chaque titre. a partir de 30 caractères, cela se couper et indiquer 3 ...


comment faire?
merci
;-)
still


George Abitbol
WRInaute passionné
WRInaute passionné
 
Messages: 1923
Inscription: 6 Juin 2003

Message le Jeu Sep 09, 2004 12:52

Utilise tout simplement substr() et éventuellement strlen() (et la doc)

Steph82
WRInaute discret
WRInaute discret
 
Messages: 82
Inscription: 12 Juin 2004

Message le Jeu Sep 09, 2004 12:54

Un ptit strlen sur chaque titre pour savoir si c'est supérieur à 30 caractères, si non, c'est bon, si oui tu utilises les fonctions d'expression regulieres pour prendre les 30 premiers caractères.

still
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 3
Inscription: 9 Sep 2004

Message le Jeu Sep 09, 2004 13:19

oui voilà j'ai mis ce code.
si quelqu'un qui passse par ici veut la solution ;-))

Code: Tout sélectionner
<?
$db = mysql_connect("base", "login", "pass");
mysql_select_db("login",$db); $sql = "SELECT * FROM journal where id=1";
$req = mysql_query($sql) or die("Erreur SQL !<br>".$sql."<br>".mysql_error());
while($data = mysql_fetch_array($req))
{

$titre = $data["titre1"];
if(strlen($titre)>=30){ $titre = substr($titre,0,26)."..."; }
echo "$titre";
echo "<br />";
$titre = $data["titre2"];
if(strlen($titre)>=30){ $titre = substr($titre,0,26)."..."; }
echo "$titre";

}
mysql_close();
?>



merci a tous

[mahé : n'hésitez pas a utiliser les baliser [code ] [ /code] ]

jeroen
WRInaute passionné
WRInaute passionné
 
Messages: 2461
Inscription: 30 Aoû 2002

Message le Jeu Sep 09, 2004 13:50

Un détail ...
C'est sympa ton code, mais si la phrase fait pile 30 caractères, tu va couper les 4 derniers pour afficher 3 points ... :wink:


mahefarivony
WRInaute accro
WRInaute accro
 
Messages: 11405
Inscription: 14 Oct 2002

Message le Jeu Sep 09, 2004 13:52

moi j'irai jusqu'a 40...
( strictement supérieur a 40 ;-) )


Dr DLP
WRInaute impliqué
WRInaute impliqué
 
Messages: 673
Inscription: 28 Juin 2003

Message le Jeu Sep 09, 2004 14:07

jeroen a écrit:Un détail ...
C'est sympa ton code, mais si la phrase fait pile 30 caractères, tu va couper les 4 derniers pour afficher 3 points ... :wink:

Il faudrait utiliser wordwrap().
Moi je ferai comme ça:

Code: Tout sélectionner
if(strlen($titre)>=30)
{
$titre = wordwrap($titre,35, "boulgou"); // Ajoute boulgou au niveau de la césure à faire
$titre = strstr($titre,"boulgou"); // Ne conserve la phrase que jusqu'à la première césure
$titre = str_replace("boulgou","....",$titre); // Remplace biulgou par les petits points
}


Ou en illisible :
Code: Tout sélectionner
$titre = (strlen($titre)>=30) ? str_replace("boulgou","....",strstr(wordwrap($titre,40, "boulgou"),"boulgou"))  : $titre;


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Formation recommandée sur ce thème :

Formation Google Analytics : en 2 jours, apprenez comment exploiter l'essentiel des possibilités de l'outil de mesure d'audience de Google. Formation animée par les experts Google Analytics de Ranking Metrics.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :

  • Analyse de popularité
    Cet outil vous permet d'analyser en détails la "popularité" de votre site sur Google. En plus du nombre de liens pris en compte par Google, il calcule le pourcentage de liens internes parmi tous les liens, et il affiche les premières URL trouvées.
  • Indice de densité
    Cet outil vous permet de calculer l'indice de densité d'un mot-clé d'une page web. Il est calculé à la fois pour la balise TITLE, la balise META description et l'ensemble du texte de la page.


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité