Volendo si potrebbe anche utilizzare un codice più "leggero", evitando le espressioni regolari ad esempio...
Per stampare a video il solo elenco di tutti gli articoli con il titolo e una piccola parte del testo, potresti farlo direttamente attraverso la query:
codice:
IF(LENGTH(testo) > 100,
CONCAT(SUBSTRING(testo, 1, 100), '...'), testo) AS articolo_parziale
in questo modo estrai i primi 100 caratteri, seguiti da tre puntini sospensivi, disponibili con l'alias "articolo_parziale", qualora il testo dell'articolo fosse superiore a quel numero di caratteri ovviamente.
Per la paginazione del testo completo potresti utilizzare poi queste due righe di codice, facendo attenzione che quando andrai a memorizzare il contenuto dell'articolo inserirai un delimitatore per indicare la fine delle varie pagine. Ad esempio, metti il caso di avere un testo così:
codice:
testo di prova, esempio per stampa articolo su più pagine
testo di prova, esempio per stampa articolo su più pagine
testo di prova, esempio per stampa articolo su più pagine
[new_pag]
testo di prova, esempio per stampa articolo su più pagine
testo di prova, esempio per stampa articolo su più pagine
testo di prova, esempio per stampa articolo su più pagine
[new_pag]
testo di prova, esempio per stampa articolo su più pagine
testo di prova, esempio per stampa articolo su più pagine
testo di prova, esempio per stampa articolo su più pagine
dove, [new_pag] indica proprio il separatore tra le varie pagine.
Quindi, con un semplice explode andrai a mostrare il contenuto dell'intero articolo suddividendolo in varie pagine. In questo modo:
Codice PHP:
//$testo è la variabile per il campo TESTO dell'articolo
$tot_pag = explode('[new_pag]', $testo);
//questa riga si commenta da sola...
$page = (empty($_GET['pag']) || !is_numeric($_GET['pag'])) ? 1 : $_GET['pag'];
//qui stampi il contenuto dell'articolo una pagina per volta
echo $tot_pag[$page -1];
//qui invece hai il menu di navigazione delle pagine dell'articolo completo
for($i = 1, $y = count($tot_pag); $i <= $y; $i++) {
if($i == $page) echo "[b]$i[/b] ";
else echo "<a href=\"?pag=$i\">$i</a> ";
}
semplice no?