Césario Posté 21 Novembre 2007 Partager Posté 21 Novembre 2007 (modifié) Bonsoir à tous, Je suis en train de créer un petit annuaire basé sur MyDir et j'aimerais tronquer à un moment le texte des descriptions des sites inscrits. Je suis tombé sur ce script ici qui a l'air de faire ce que je souhaite mais après de nombreux essais et ne comprenant rien au php, je n'y arrive pas. Est-ce que quelqu'un peut m'aider ? Voici le code utilisé pour afficher ces sites : // Affichier les liensfunction affichage_liens($liste, $url_r=1, $fil=0) {global $tab_pr; while ($i=mysql_fetch_array($liste)) { $tab_pr[$i["url"]] = $i["pr"]; echo "\n".'<div class="lien">'."\n".'<a onclick="window.open(this.href,\'_blank\');return false;" href="'.$i["url"].'" title="'.$i["name"].'">'.$i["name"].'</a>'; if ($i["pr"] != 0) echo ' <img src="images/pr'.$i["pr"].'.gif" alt="Page Rank : '.$i["pr"].'" />'; echo "<br />\n"; echo $i["description"].'<br />'; if ($fil == 0) echo "\n<span>".$i["url"]."</span>\n</div>\n\n"; else { echo "\n".'<span>'.$i["url"].'</span><br />'; $title_chemin = show_me_the_way_clic($i['category'], $url_r); echo "\n<div class=\"ariane\">Catégorie :$title_chemin"."</div>\n</div>\n\n"; } }} Merci. Modifié 21 Novembre 2007 par Césario Lien vers le commentaire Partager sur d’autres sites More sharing options...
azerty31700 Posté 21 Novembre 2007 Partager Posté 21 Novembre 2007 Bonjour, Je ne suis pas sur de ce que je vais dire et je n'ai aucun moyen de vérifier mais je sais que cela fonctonne en python, alors pourquoi pas en php ? Partant du fait que les chaines de caractères sont des taleaux tu peu essayer $var = $chaineTropLongue[:500] Ca devrais, mais encore une fois, je n'en suis pas sur, couper ta chaine trop longue et placer les 500 premiers caractères dans la variable $var. Bonne chance pour ton annuaire Lien vers le commentaire Partager sur d’autres sites More sharing options...
Césario Posté 21 Novembre 2007 Auteur Partager Posté 21 Novembre 2007 Bonsoir, Merci, je vais voir ça même si je ne sais pas trop comment l'utiliser... Lien vers le commentaire Partager sur d’autres sites More sharing options...
captain_torche Posté 22 Novembre 2007 Partager Posté 22 Novembre 2007 Personnellement, j'utilise cette fonction, pour ne pas couper en plein milieu d'un mot : <?php function extrait($txt, $taille = 150) { $txt= substr($txt, 0, $taille); $last_space = strrpos($txt, ' '); $extrait = substr($txt, 0, $last_space); return $extrait.' [...]'; }?> Dans le principe, il coupe le texte à X caractères (150 par défaut), puis cherche après ça le dernier espace du texte coupé. Il supprime tout ce qu'il trouve derrière, et ajoute [...] Lien vers le commentaire Partager sur d’autres sites More sharing options...
Césario Posté 22 Novembre 2007 Auteur Partager Posté 22 Novembre 2007 Bonjour, Cela me semble pas mal du tout mais comment l'adapter à mon code ? Désolé mais moi et le php, c'est pas le top ! Merci. Lien vers le commentaire Partager sur d’autres sites More sharing options...
captain_torche Posté 22 Novembre 2007 Partager Posté 22 Novembre 2007 Il te suffit de faire : echo extrait($ta_variable); Pour couper le texte après plus de caractères, il te suffit de faire : echo extrait($ta_variable, 300); Lien vers le commentaire Partager sur d’autres sites More sharing options...
Césario Posté 22 Novembre 2007 Auteur Partager Posté 22 Novembre 2007 Bonsoir, Et merci pour ton aide. C'est parfait ! Lien vers le commentaire Partager sur d’autres sites More sharing options...
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant