Garder les X derniers éléments d'un fichier texte.

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 : Garder les X derniers éléments d'un fichier texte.

par Cyrano » 02 juil. 2005, 16:20

Alors c'est [Résolu] :?:

par maxmaxmax12 » 02 juil. 2005, 16:20

J'y suis arrivé ! :D
(avec les news qui s'ajoutent au début).

Un tout grand merci à toi :D


(edit) Oui, c'est résolu, je suis désolé d'avoir oublié :oops: ... ça devait être mon euphorie :P

par kmeleon » 02 juil. 2005, 11:04

Ta news s'ajoute en début ou en fin de fichier ?
Si c'est au début, le reste devient très simple. Il te suffit de conter les <item></item, et dès que t'arrive à 20 tu supprime toutes les autres lignes.
Si c'est à la fin, tu compte tous les items une première fois. Tu fait la différence:
$diff = $total-20;
et tu relis le fichier en supprimant $diff fois tous ce qu'il y a entre <item> et </item> de façon à ce qu'il te reste 20 groupe de <item></item>...

Ok c'est un peu compliqué, mais si tu n'a pas compris je me ferai un plaisir de te le rééxpliquer :twisted: lol.

Bonne journée !

par maxmaxmax12 » 02 juil. 2005, 00:20

Merci beaucoup :)

Alors voilà "Canal.php" :
<?php

header('Content-Type: text/xml; charset=iso-8859-1');
echo('<?xml version="1.0" encoding="iso-8859-1" ?>'); 

?>

<rss version="2.0">
	<channel>

<title></title>
<link></link>
<description></description>
<language>fr</language>
<docs>http://blogs.law.harvard.edu/tech/rss</docs>
<image>
	<url></url>
	<title></title>
	<link></link>
	<description></description>
	<width>16</width>
	<height>16</height>
</image>
<category>Site Personnel</category>
<ttl>1500</ttl>

<?php

include 'donnees.txt';

?>

	</channel>
</rss>
"donnees.txt" se présentant sous la forme :

Code : Tout sélectionner

<item> <title>Système non fonctionnel pour le moment !</title> <link></link> <description>Le système de fil RSS n'est pas encore actif. Je vous remercie pour votre patience !</description> <author>[email protected]</author> </item>
Le résultat est visible :)

Si j'ajoute une news, j'aimerais que l'actuelle reste.
De même si j'en ajoute 2, 3, 4, ..., 19.

Mais j'aimerais fixer une limite de 20 ; ainsi, si mon fichier devait se retrouver à 21 <item>, il faudrait supprimer le plus ancien pour pouvoir rester à 20 en permanence :)


Bonne soirée,

par kmeleon » 01 juil. 2005, 23:26

Je connais pas très bien les RSS, mais je pense pouvoir t'aider. Donne-nous un exemple de ton fichier RSS et précise en indiquant tout ce qu'il faut.

Bonne soirée

Garder les X derniers éléments d'un fichier texte.

par maxmaxmax12 » 01 juil. 2005, 21:43

Bonjour :)

J'aimerais gérer un fil RSS dynamiquement mais sans Base de Données, le tout étant stocké dans un fichier texte.

A chaque fois que j'ajoute une news sur mon site, celle-ci est copiée dans ledit fichier.

Tout est prêt, mais il y a encore un petit problème : si j'envoie 100 news, il y aura 100 news dans mon fichier RSS, c'est assez ennuyeux. :P

Donc j'aimerais savoir comment garder les 20 (par exemple) derniers <item> de mon fil et supprimer les anciens quand c'est nécessaire.

Pouvez-vous m'aider ? :)


D'avance merci,

maxmaxmax12.