Page 1 sur 1
site web style journal
Posté : 21 juin 2005, 16:01
par laTulipe
bonjour,
je voudrais realiser un site type journal. c'est a dire que je voudrais afficher le debut d'un article dans ma page, puis lorsque l'on clique sur ce ce debut d'article, on affiche l'article complet. l'article est stocke dans une BDD.
est il possible de faire un script qui recupere seulement le debut de l'article (la premiere phrase par exemple) puis qui affiche un lien 'voir la suite'.
merci a qui pourra m'aiguiller.
Re: site web style journal
Posté : 21 juin 2005, 16:13
par ouckileou
oui c'est possible
tu as des outils tout prêts style Dotclear
sinon tu peux développer, il faut que tu réfléchisses aux informations que tu veux stocker/afficher et construire ta base de données derrière
ensuite afficher la première phrase, c'est du détail... tu peux très facilement ne sélectionner que les n premiers caractères de l'article sur la page d'accueil, et faire une page qui affiche l'article en entier
Posté : 21 juin 2005, 16:24
par laTulipe
merci pour ta reponse
ma base est prete mais je bloque sur le script. peux tu me dire comment faire le script qui recupere les n premiers caracteres ou tous les caracteres avant le premier point '.' (pour pas couper la phrase)?
a+
Posté : 21 juin 2005, 16:31
par ouckileou
pour sélectionner les n premiers caractères regarde ici c'est justement la question :
http://www.phpfrance.com/forums/voir_sujet-4639.php
pour couper juste au premier point je ne sais pas il doit y avoir plusieurs solutions...
genre un explode avec comme délimiteur le point, et tu ne prends que le premeir morceau
à creuser, je ne sais pas là comme ça
http://fr.php.net/manual/fr/function.explode.php
Posté : 21 juin 2005, 17:32
par laTulipe
ca fonctionne avec explode, bien qu'il ne prenne pas le point avec, mais c'est pas trop grave.
par contre je n'arrive pas à selectionner n caracteres. je jveux le faire en php pas sql.
?????
Posté : 21 juin 2005, 17:37
par ouckileou
alors regarde du coté de printf/sprintf
http://fr.php.net/manual/fr/function.sprintf.php
http://fr.php.net/manual/fr/function.printf.php
avec explode tu rajoutes le point à ta chaine récupérée et le tour est joué

Posté : 21 juin 2005, 18:03
par laTulipe
ok pour explode.
je capte pas comment faire avec printf/sprintf.
mais ca marche avec ca : string substr (string string, int start [, int length])
Posté : 21 juin 2005, 18:18
par fggdm
Salut,
- substr() peut couper un mot en plein milieu ;
- L'éclatement de la chaîne sur un signe (le point) n'est pas toujours pertinente car le point n'est pas toujours là dans une chaîne pour indiquer la fin d'une phrase. On retrouve le point dans les adresses email et les noms de domaine ou encore dans les nombres formatés avec le point comme séparateur, les points de suspension... le résultat est aléatoire.
Il s'agit d'une base de données d'articles, il y a une autre solution qui tient dans la structure d'un article justement. Un article peut être composé de différents éléments, les plus courants sont le sur-titre, le titre, le sous-titre, le chapeau, le corps et la signature (date, auteur).
Pour moi une bonne solution est d'utiliser le chapeau pour ce que tu souhaite faire. En plus un bon chapeau donne bien plus d'informations sur l'article que les premiers n mots, voire la première phrase. C'est donc en plus d'être bien mieux gérable informatiquement, un apport pour le lecteur et les moteurs de recherche.
Posté : 21 juin 2005, 18:27
par laTulipe
j'etais parti sur cette voie au debut, mais je trouvais ca trop "manuel". je pensais qu'il y avait une solution miracle en php.
ca doit etre la meilleure solution effectivement. merci