[ P H P ] + MySQL Couper un ARTICLE en plusieurs page

+ MySQL Couper un ARTICLE en plusieurs page [ P H P ] - Programmation

Marsh Posté le 06-03-2002 à 20:44:01    

Bah voila
je me demandais un truc, si je veut qu'un article soit coupé en plusieurs page je fait comment ?
Faut que je crée plusieurs champs dans ma table article ou je pourrais avoir une fonction php qui coupe mon texte avec un mot clefs inseré dans le texte
 
Apres comment faire pour donné ladresse de la seconde page ?
 
Merci d'avance :jap:


---------------
Oui je sais, je suis une merde en orthographe et alors ? Altcoin list: https://docs.google.com/spreadsheet [...] =286417424
Reply

Marsh Posté le 06-03-2002 à 20:44:01   

Reply

Marsh Posté le 06-03-2002 à 20:56:44    

C'est super simple.
 
En gros ta une page php qui prend absoluement 1 variable ex:
articles.php?page=1
 
puis en PHP selon la valeur de la variable page tu coupe après x paragraphe ou tu commence à X parapgraphe...
 
 :hello:

Reply

Marsh Posté le 06-03-2002 à 21:01:06    

ce que j'aimerais bien moi c par exemple je tape ce texte la en tant qu'article :
 
page1
blabla
blabla
blabla
page2
blibli
blibli
blibli
etc...
 
et mon script php sache tout seul que si il a page1, tout le texte jusquau prochaine page2 soit sur une page
tu voit ce que je veut dire
 
parceque je peut pas coupé tout les x caracteres ca risque de donné un article incomprehensible sur certains points
 
merci


---------------
Oui je sais, je suis une merde en orthographe et alors ? Altcoin list: https://docs.google.com/spreadsheet [...] =286417424
Reply

Marsh Posté le 06-03-2002 à 21:21:47    

massanu a écrit a écrit :

ce que j'aimerais bien moi c par exemple je tape ce texte la en tant qu'article :
 
page1
blabla
blabla
blabla
page2
blibli
blibli
blibli
etc...
 
et mon script php sache tout seul que si il a page1, tout le texte jusquau prochaine page2 soit sur une page
tu voit ce que je veut dire
 
parceque je peut pas coupé tout les x caracteres ca risque de donné un article incomprehensible sur certains points
 
merci  




 
Si tu veux faire ça comme ça... utilise plutôt une balise <page> pour ça, comme ça il n'y aura pas trop d'ambiguité avec des mots dans le reste du texte.
 
Puis tu va 'splitter' le texte complet en fonction de ce mot justement :
$texte_array = split ("<page>", $texte);
 
$texte contenant ton article complet.
 
Puis en utilisant la méthode de Ventilo, tu fais :
echo $texte_array[$page];
 
et ça renvoyera la partie désirée... ATTENTION : l'article commence page 0

Reply

Marsh Posté le 06-03-2002 à 21:29:54    

mais apres jinsere un lien page suivante en bas de larticle
mais comment faire pour savoir que jai atteint la fin et que le lien page suivant n'aparaisse plus ?


---------------
Oui je sais, je suis une merde en orthographe et alors ? Altcoin list: https://docs.google.com/spreadsheet [...] =286417424
Reply

Marsh Posté le 06-03-2002 à 21:33:38    

massanu a écrit a écrit :

mais apres jinsere un lien page suivante en bas de larticle
mais comment faire pour savoir que jai atteint la fin et que le lien page suivant n'aparaisse plus ?  




 
tu fais un test sur le nombre d'élément dans le tableau :
if ($page + 1 < count($texte_array))
{
  // echo le lien $page + 1
}

Reply

Marsh Posté le 07-03-2002 à 20:28:10    

en fait jai reussit a faire ca avec vos belles explication en 10minute mais le bleme c que y des fonctions que je comprend pas
 
je vois pas vraiment comment elle fonctionne et ca menerve alors je voulais encore vous prendre un peu de temps
voila ce que donne mon code, qui fonctionne parfaitement :
 
<?  
include "Config.php";
bd_connect();
 
$sql="SELECT id,titre, texte FROM article WHERE id=1";
$resultat=mysql_query($sql);
 
while (list($id,$titre,$texte)=mysql_fetch_row($resultat))
{
 echo "<b>$titre</b><br><br>";
 
 $texte_array = split ("<page>", $texte);
 
 echo $texte_array[$page];
 
 if ($page + 1 < count($texte_array))
{  
 $page++;
  echo "<br><br><a href=\"article.php?id=$id&page=$page\">Page suivante</a>";
}  
 
}
?>
 
Bien ce que je comprend pas, c comment marche le truc dans le IF
c a dire la condition.
et aussi le [B]echo $texte_array[$page];[/B]
 
Ca serait cool que vous mexpliquiez parceque j'aime pas faire des trucs dont je comprend pas le focntionnement
 
merci beaucoup :jap:


---------------
Oui je sais, je suis une merde en orthographe et alors ? Altcoin list: https://docs.google.com/spreadsheet [...] =286417424
Reply

Marsh Posté le 07-03-2002 à 22:27:30    

svp

Reply

Marsh Posté le 08-03-2002 à 02:28:38    

Le IF c'est pour savoir si la page active est la derniere, si non elle affiche le lien "page suivante"  :)

Reply

Marsh Posté le 08-03-2002 à 11:01:21    

Ventilo a écrit a écrit :

Le IF c'est pour savoir si la page active est la derniere, si non elle affiche le lien "page suivante"  :)  




 
Voilà, en fait plus précisemment, la variable $texte_array est un tableau contenant une page dans chacune de ses colonnes.
 
Comme visiblement tu ne sais pas comment marche un tableau, je t'explique.. c'est une sorte d'armoire ou tu peux mettre une valeur dans chaque armoire. Pour accéder en lecture ou écriture dans un de ces tiroirs, tu dois spécifier le numéro du tiroir, d'où $texte_array[3] , donc la j'accède au 4eme tiroir (parce que en fait dans les tableaux, on commence à compter à partir de 0 :)
 
Le tableau count ($texte_array) permet de récupérer le nombre d'éléments dans le tableau donc si j'ai 2 pages, count me renvoie 2 mais par contre dans mon exemple, la variable $page va de 0 à 1 or tu vois que pour $page=1 il n'y a pas de pages suivantes... donc je fais un test :
$page + 1 < count ($texte_array)
et tu vois que pour $page = 1 et count... = 2 , le test renvoie FALSE.

Reply

Marsh Posté le 08-03-2002 à 11:01:21   

Reply

Marsh Posté le 08-03-2002 à 12:23:54    

:lol: merci
 
je sais tres bien ce qu'est un tableau, lol, merci pour lexplication tres imagé, c juste que je ne savais pas que ce tableau  contenait le contenu de chaque page dans chaque case
 
c la fonction SPLIT qui a fait ca ??
 
elle es cool cette fonction dit donc ;)
merci a tous


---------------
Oui je sais, je suis une merde en orthographe et alors ? Altcoin list: https://docs.google.com/spreadsheet [...] =286417424
Reply

Marsh Posté le 08-03-2002 à 12:45:16    

massanu a écrit a écrit :

:lol: merci
 
je sais tres bien ce qu'est un tableau, lol, merci pour lexplication tres imagé, c juste que je ne savais pas que ce tableau  contenait le contenu de chaque page dans chaque case
 
c la fonction SPLIT qui a fait ca ??
 
elle es cool cette fonction dit donc ;)
merci a tous  




 
desolé :) mais comme tu demandais ce que c'était $texte_array [$page] :D
 
oui c'est split qui fait ça... très pratique en effet... tu peux même utilisé des expressions régulières pour splitter un texte... mais c'est une autre fonction ;)

Reply

Marsh Posté le 08-03-2002 à 13:43:43    

ha je comprend pkoi tu ma expliqué alors ya pas de mal lol
 
jcrois que je vais alé faire un tour dans php.nt et lire quelques fonctions sur les chaines de caractere mais le truc c que quelqu'un devrait traduire la ressource php, ca serait cool, c clair ca sera un travail tres relou mais bon ca le ferait grave
 
sinon toi qui a lair de bien ty connaitre, ta pas quelques fonctions interessante et qui serve dans ton cerveau a me donné ?
que jetudie ca de plus pres ?


---------------
Oui je sais, je suis une merde en orthographe et alors ? Altcoin list: https://docs.google.com/spreadsheet [...] =286417424
Reply

Marsh Posté le 09-03-2002 à 17:44:09    

massanu a écrit a écrit :

ha je comprend pkoi tu ma expliqué alors ya pas de mal lol
 
jcrois que je vais alé faire un tour dans php.nt et lire quelques fonctions sur les chaines de caractere mais le truc c que quelqu'un devrait traduire la ressource php, ca serait cool, c clair ca sera un travail tres relou mais bon ca le ferait grave




Tu parles de quoi? de la doc? ou du language? si tu parles de la doc sur php.net tu as de la doc en francais tres bien foutues :)  
http://www.php.net/manual/fr/  
 
[citation]
 
sinon toi qui a lair de bien ty connaitre, ta pas quelques fonctions interessante et qui serve dans ton cerveau a me donné ?
que jetudie ca de plus pres ?  
[/citation]
 
Pour les fonctions, bah regarde déjà sur php.net, sinon mets un post quand tu as des questions :)
Je connais pas beaucoup de fonctions par coeur, mais je sais à peu près ce qui est possible ou non, et je vais voir la doc à ce moment-là ;p

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed