- Home
- Categorie
- Coding e Sistemistica
- PHP
- Indici di "Anteprima News" : limite numerico
-
Indici di "Anteprima News" : limite numerico
Ciao a tutti,raga..
Ho inserito nel mio sito un pannello di gestione news..
E sono riuscito anche a far apparire in Home le "Anteprime" delle
prime 3 news più recenti ,tramite questo piccolo script..<? require(*'config.php'*); $filename = "*LISTANEWS.php*"; #- open article summaries if(file_exists($filename)){ $fh = fopen($filename, "r"); $old_news = fread($fh, filesize($filename)); fclose($fh); } #- get first three article $articles = explode("<!--ARTICLE-->", $old_news); $i=0; foreach ( $articles as $article ){ if(count($articles)>$i){ ** if(3 >= $i++){** print $article; } } } ?>
Mi servirebbe ora un modo per far comparire le successive 5 in una nuova tabella (escludendo appunto le 3 già presenti)..
Ho esposto il seguente argomento già in una precedente Discussione ..
Tutto sembrava andare bene,ma successivamente mi sono accorto che le news ,partivano sì dalla quarta in poi,ma non rispettavano il limite numerico imposto dallo script (che è di massimo 5 news)Qui di seguito il codice che ho utilizzato:
<? require(*'config.php'*); $filename = "*LISTANEWS.php*"; #- open article summaries if(file_exists($filename)){ $fh = fopen($filename, "r"); $old_news = fread($fh, filesize($filename)); fclose($fh); } #- get first three article $articles = explode("<!--ARTICLE-->", $old_news); $i=0; foreach ( $articles as $article ){ if(count($articles)>$i){ ** if($i++ > 3){** ** if(5 <= $i++ ){** print $article; } } } } ?>
Qualcuno mi da una dritta?
-
In pratica il mio intento è quello di arrivare a tale soluzione:
**TABELLA 1) **
NEWS 12
NEWS 11
NEWS 10
TABELLA 2)
NEWS 9
NEWS 8
NEWS 7
NEWS 6
NEWS 5Invece mi riporta questo risultato:
**TABELLA 1) **
NEWS 12
NEWS 11
NEWS 10
TABELLA 2)
NEWS 9
NEWS 8
NEWS 7Ho sbagliato qualcosa nello script della seconda tabella?
-
Prova così:
[php]
//...
foreach ($articles as $article)
{
if(count($articles) > $i)
{
if(($i > 3) && ($i <= 5))
{
print $article;
}
$i++;
}
}
//...
[/php]Ciao!
-
grazie per aver risposto alla mia richiesta ^^ ..
Pare che ci sia un problema con l'accorgimento che mi hai dato: comargono solo 2 news anzichè 5 ..
Mentre se inseriscoforeach ($articles as $article) { if(count($articles) > $i) { if(($i > 3) && **(****$i <= 8****))** { print $article; } $i++; } }
Allora sì,ne compargono 5 come vorrei..
-
Hai ragione, mi son confuso con i numeri, però l'idea c'era
Ciao!
-
GRaZZzzzIe mille!