Ne faire afficher que les premiers mots d'une phrase ?

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Ne faire afficher que les premiers mots d'une phrase ?

par blof » 24 janv. 2009, 16:01

Bonjour,

si on parle de nombre de mots :
<?php
$txt = 'aaa bbb   ccc ddd eee
fff ggg';

$nb_mots = 6;

preg_match('/((?:\s*\w+){'.$nb_mots.'})/', $txt, $mots);

echo '<b>Les ', $nb_mots, ' premiers mots : </b>', nl2br($mots[1]);

?>

par Bjorken » 24 janv. 2009, 10:49

Merci.

En fait j'ai réussi à impriquer :

Code : Tout sélectionner

<?php echo nl2br(substr(($row_articles['resume']),0,30)); ?>
Mais en soit ça me sert pas à grand chose d'imbriquer puisque je ne veux ici que les 30 premiers mots sans retour de ligne !!!!

Bon mais je suis arrivé à mes fins !
Merci en tout cas pour la fonction ;-)

par boobz » 24 janv. 2009, 10:34

Bin,

$var_interm= $row_articles['resume'];

et ensuite tu appliques la fonction substr sur $var_interm.

Ensuite tu fais ton truc avec la fonction nl2br.

par Bjorken » 24 janv. 2009, 10:31

Ca veut dire quoi de passer par une variable intermédiaire ?

Merci :?:

[Note : ce message a été posté de manière anonyme avant d'être réattribué à son auteur]

par boobz » 24 janv. 2009, 10:23

Ne l'imbrique pas, passe par une variable intermédiaire (toujours faire simple au début, ensuite complexifier).

par Bjorken » 24 janv. 2009, 10:10

Merci pour cette information !
Alors je n'arrive pas à insérer cette fonction.

Voici ma ligne de code :

Code : Tout sélectionner

<?php echo nl2br($row_articles['resume']); ?>
C'est du code généré par Dreamweaver auquel j'ai déjà ajouté la fonction nl2br afin de prendre en compte les retours charriot de la saisie du formulaire mySQL.

Et je n'arrive pas à voir comment imbriquer là dedans la fonction substr...

:roll:

par boobz » 24 janv. 2009, 08:59

Salut,

un truc du genre ?

$machaine = "salut on n'affiche que les 15 premiers caractères";

// affiche les caractères 0 à 15
$chaine_coupee = substr($machaine,0,15);



En espérant avoir pu t'aider.

boobz

Ne faire afficher que les premiers mots d'une phrase ?

par Bjorken » 24 janv. 2009, 08:47

Bonjour,

Je voudrais savoir s'il est possible de ne faire afficher que les premiers mots d'une phrase issue d'un champ d'une base mySQL ?

Je dois réaliser une rubrique d'actualités et je ne voudrais faire afficher que le début de chaque actu.

Merci d'avance pour votre réponse ! :D