Para retornar el tema de paginacion de PHP con SQL server
y para los que estuvieron buscando hay parte de la solucion en este codigo que eh modificado.
El problema es : logro contar la cantidad total de lineas y logro realizar el link por cantidad de lineas a paginar pero no veo los resultados.
Encontrados 451 artículos Páginas: ' [1] ' [2] ' [3] ' [4]
el codigo que eh modificado lo saque de http://www.xlwebmasters.com/doc3.php?id=309&doc=php42
y mi codigo es ..
<?php
// Se establece la conexión con la fuente de datos
$conex = odbc_connect("MISERVER", "sa", "sa");
IF ($num>0) { $n=$num;} ELSE { $n=0; }
$consulta = "select *
from mibase.tmp_clientes
where cod_corp='Organizacion' and cod_pais='ar'
order by cod_pais ";
$resultado = odbc_do($conex, $consulta);
$Num_Campos = odbc_num_fields($resultado);
$Num_Filas = 0;
// Se recorre el cursor
while (odbc_fetch_row($resultado))
{
$Num_Filas++;
echo "<TR>";
for ($i = 1; $i <= $Num_Campos; $i++)
echo "</TR>";echo "\n";
} // de todas las tuplas respuesta: el while
// ********* Si noy hay datos se indica *******************
if ($Num_Filas == 0)
{
echo "<TR><TD COLSPAN=9><CENTER>";
echo "No hay clientes";
echo "</CENTER></TD></TR>\n";
}
echo "</TABLE>\n";
echo "<BR><HR><BR>\n";
//Buscar 150 registros
$sql="select top 150 COD_PAIS, COD_CORP, NUM_FIR, NOM_CLI, GRP_LEG
from mibase.tmp_clientes
where cod_corp='Organizacion' and cod_pais='ar'
order by cod_pais ";
$resulta2 = odbc_do($conex, $sql);
if ($row=odbc_num_rows($resulta2))
{
echo "<TABLE BORDER='0'>";
DO
{
echo "<TR><TD> ".$row["documento"]."</TD> </TR>";
}
WHILE (odbc_num_rows($resultado));
echo "</TABLE>";
{
$Num_Filas++;
echo "<TR>";
for ($i = 1; $i <= $Num_Campos; $i++)
if (odbc_result($resultado, $i))
echo odbc_result($resultado, $i);
echo "</TR>";echo "\n";
}
}
//PAGINACIÓN
echo "<HR><TABLE BORDER='0' ALIGN='center' WIDTH='95%'><TR>";
//Muestra por pantalla el número total de artículos encontrados
echo "<TD ALIGN='left'> Encontrados $Num_Filas artículos </TD>";
echo"<TD ALIGN='RIGHT'>";
echo "<FONT FACE='Arial' SIZE='-1' COLOR='#336699'>Páginas: </FONT>";
//Mientras $i no sea igual o superior al total encontrado se incrementa de 150 en 150. $i representa el identificador en la Tabla del número de registro que se buscará en el siguiente Select.
//$a es el número de páginas encontrado.
FOR ($i=0; $i< $Num_Filas; $i=$i+150)
{
$a=$a+1; //Incrementamos el número de página
//Si $n (número de registro donde empieza la busqueda actual actual) es igual a $i se marca en negrita para resaltar la página en la que estamos.
IF ($n==$i)
{
//Ponemos el link a la misma página peró con un número de registro cada vez diferente
echo "<A HREF='tresx.php?num=".$i."'>[".$a."] </A> ";
}
ELSE
{
echo "<A HREF='tresx.php?num=".$i."'>' [<B>".$a."</B>] </A> ";
}
}
echo "</TD></TR></TABLE>";
//Se liberan recursos y se cierra la conexión
odbc_free_result($resultado);
odbc_free_result($resulta2);
odbc_close($conex);
?>
espero que me puedan ayudar y que le pueda ser util a algun otro forero, desde ya muchas gracias y salu2