Bueno .. creo que usar "30" campos no es la mejor solución para crear un "documento" de N páginas ..
Deberías tratar las páginas como registros de una tabla extra relacionada con la tabla "padre" que define ese "documento" tipo:
tabla documentos:
id_doc
titulo
introducción
blabla
tabla paginas_doc:
id_pagina
id_doc
contenido_pagina
etc ...
Así podrás contar los registros de la tabla "paginas" que relacionana al "documento" por esa clave foránea que será el id_doc (... WHERE documentos.id_doc = paginas_doc.id_doc ....)
Algo tipo:
Código PHP:
<?
// conectas a tu BD .. etc ...
$sql="SELECT paginas_doc.id_pagina FROM documentos,paginas_doc FROM documentos.id_doc = paginas_doc.id_pagina AND documento.id_doc='".$_GET['id_doc']."'";
$resultado_paginas=mysql_query($sql) or die (mysql_error());
$contador=1;
$numero_paginas=mysql_num_rows($resultado_paginas);
echo "Este Doc .. tiene ".$numero_paginas. "pagina/s<br>";
if ($numero_paginas >0){
while ($row=mysql_fetch_array($resultado_paginas)){
echo "<a href=\"ver_pagina.php?id_pagina=".$row['id_pagina']."\">Pagina ".$contador."</a>";
$contador++;
}
} else {
echo "Este Doc .. no tiene páginas ...";
}
?>
Y tu "ver_pagina.php" .. haces la consulta SQL tipica para obtener esa página de la tabla de paginas.
Código PHP:
//etc ..
$sql="SELECT * FROM paginas_doc WHERE id_pagina='".$_GET['id_pagina']."'";
// etc ...
Así te resultará mas fácil implementar un paginado standard y sobre todo un sistema más versatil de documentos de 1 a N páginas por documento.
Un saludo,