Ciao a tutti, andrò subito al sodo:
Ho una directory che contiene gli articoli del blog (che appunto non utilizza alcun db, ma semplici files di testo) ed un file chioamato index. A Questo index aggiungo una riga ogni volta che viene creato un articolo, inserendovi il nome del file dell'articolo.
La pagina principale del blog, deve caricare un certo numero di articoli (il numero è settato in una variabile di configurazione), dano ovviamente la precedenza a quelli più recenti. Per ottenere questo risultato, ho scritto il codice seguente (ho eliminato le funzioni da me definite per maggiore chiarezza)
L'array $revBlogFiles, contiene la lista di articoli, ma dal più vecchio al più recente, così lho invertito.Codice PHP:
$revBlogFiles = file('blog/index');
$BlogFiles = array_reverse($revBlogFiles);
$c = 0;
while ($c <= $MAX_ARTICLES) {
$trimmed = rtrim($BlogFiles[$c]);
if (is_file('blog/'.$trimmed)) {
echo loadFile('blog/'.$trimmed);
echo "<hr size='1px' />";
echo "[url='?p=blog&ba=showTrail&article=$trimmed']Commenti[/url]";
}
else {
echo "<h3>Errore</h3>
Impossibile visualizzare l'articolo $trimmed</p>";
}
$c++;
}
Ho applicato rtrim per rimuovere il newline alla fine di ogni elemento dell'array.
Quindi IN TEORIA, lo script dovrebber, passare in rassegna gli elementi dell'array, e stamparli, ma ciò che ottengo è solamente l'articolo più recente.
Se qualcuno mi dicesse dovè l'idiozia gliene sarei veramente grato, anche perchè credo di aver risolto pproblemi più complicati di questa menata..... spero di essere stato chiaro.
Grazie Mille!! (il sito in costruzione è http://bubbledev.altervista.org)