Foros del Web » Programando para Internet » PHP »

Mostrar archivo por bloques

Estas en el tema de Mostrar archivo por bloques en el foro de PHP en Foros del Web. Hace no más de 15 días me dijeron un código para paginar un archivo cada X lineas pasando por las diferentes páginas a través de ...
  #1 (permalink)  
Antiguo 26/02/2002, 22:52
 
Fecha de Ingreso: diciembre-2001
Ubicación: Madrid
Mensajes: 889
Antigüedad: 22 años, 3 meses
Puntos: 4
Mostrar archivo por bloques

Hace no más de 15 días me dijeron un código para paginar un archivo cada X lineas pasando por las diferentes páginas a través de "Siguiente" y "Atrás" y ahora tengo el problema de que quisiera mostrarlo por bloques, o sea, como está acá en foros del web cuando hay un post con varios mensajes.

Tengo un script que me lo hace, pero mostrando un directorio y como soy tan cazurro y no entiendo mucho de esto, no sé como hacerlo para un archivo.

¿Alguien me podría echar su mano derecha o incluso su pie izquierdo?

De antemano, os agradezco la ayuda que siempre me prestaron.

Saludos.
  #2 (permalink)  
Antiguo 26/02/2002, 22:54
Avatar de lado2mx
Colaborador
 
Fecha de Ingreso: agosto-2001
Ubicación: Veracruz
Mensajes: 3.720
Antigüedad: 22 años, 8 meses
Puntos: 9
Re: Mostrar archivo por bloques

oye, puedes pasar el codigo para asi ayudarte mas?, porfavor

<html><center><embed src="http://www.ladodos.com/imagenes/firma.swf" height=105 width=500>
</embed></center></html>
  #3 (permalink)  
Antiguo 27/02/2002, 12:48
 
Fecha de Ingreso: diciembre-2001
Ubicación: Madrid
Mensajes: 889
Antigüedad: 22 años, 3 meses
Puntos: 4
Re: Mostrar archivo por bloques

Claro! Perdona.. y gracias por tu rápida contestación:
Código:
&lt;?
if (!isset($bloque)) {
$bloque=1;}
$directorio = opendir(&quot;.&quot;);
$contador=0;
$ruptura=10;
//Captura de Ficheros
while ($fichero = readdir($directorio)) {
if (!is_dir($fichero)) {
$s=strtoupper($fichero);  // paso a mayúsculas
// Verifico que el fichero sea PHP, HTM o HTML
if (substr(&quot;    &quot;.$s,-4)==&quot;.PHP&quot; || substr(&quot;    &quot;.$s,-4)==&quot;.HTM&quot; || substr(&quot;     &quot;.$s,-5)==&quot;.HTML&quot;) {
//Fichero válido
$contador++;
if (($contador&gt;$ruptura*($bloque-1)) &amp;&amp; ($contador&lt;=$ruptura*$bloque)) {
/// Mostrar fichero
print ($contador.&quot;.- &lt;a href=\&quot;&quot;.$fichero.&quot;\&quot;&gt;&quot;.$s.&quot;&lt;/a&gt;&lt;br&gt;\n&quot;);}}}}
// 2º. Muestra el pie de página: [1] [2] [3]...
print(&quot;&lt;p align=center&gt;&quot;);
for ($i=1; ($i-1)*$ruptura&lt;$contador; $i++) {
if ($bloque == $i) {
// Bloque actual
print(&quot;[&lt;strong&gt;&quot;.$i.&quot;&lt;/strong&gt;] &quot;);
}
else {
// Otro bloque: LINK
// print(&quot;[&lt;strong&gt;&lt;a href='ruptura.php?bloque=&quot;.$i.&quot;'&gt;&quot;.$i.&quot;&lt;/a&gt;&lt;/strong&gt;] &quot;);
print(&quot;[&lt;a href='ruptura.php?bloque=&quot;.$i.&quot;'&gt;&quot;.$i.&quot;&lt;/a&gt;] &quot;);}}
print(&quot;&lt;/p&gt;\n&quot;);
?&gt;
Ese es el archivo que parte los archivos de un directorio por bloques y es el que quisiera utilizar para partir un archivo de texto segun el número de lineas.
Quizas sea fácil de asimilar pero pa mi... ufff

Gracias por tu interés.
Nos vemos.
  #4 (permalink)  
Antiguo 27/02/2002, 13:45
Avatar de epplestun  
Fecha de Ingreso: octubre-2001
Mensajes: 1.621
Antigüedad: 22 años, 5 meses
Puntos: 5
Re: Mostrar archivo por bloques

Bueno te eplico lo que yo haria para paginar un archivo de texto, primero contaria las lineas del archivo, y segun el numero que queramos mostar pos le hacemos un bucle de 0 a X y bien asi mostramos las X primeras lineas que queremos, luego hacemos un bucle con el resto de lineas que tenemos y de esa manera creamos los enlaces que contendran el numero de lineas que queremos ver

<table style="border:1px solid black"><tr><td><center>
<embed width="88" height="144" src="http://www.alaplaya.com/~epplestun/yo.swf"></td></td><font face=verdana size=1>Ivan Rodriguez el poder es [B]PHP</p></td></tr></table>
  #5 (permalink)  
Antiguo 27/02/2002, 14:07
 
Fecha de Ingreso: diciembre-2001
Ubicación: Madrid
Mensajes: 889
Antigüedad: 22 años, 3 meses
Puntos: 4
Re: Mostrar archivo por bloques

Hola epplestun:

Gracias por tu contestación pero... arriba ya indiqué que ya sabía paginarlo y lo que quería, es saber a través de el código que deje, si alguien me pudiera ayudar a poner por bloques un archivo de texto cada X lineas y no el de un directorio.

Si no me supe explicar, lo siento

Espero alguna sincera respuesta que me pueda ayudar.

Gracias de nuevo
  #6 (permalink)  
Antiguo 01/03/2002, 09:28
Avatar de epplestun  
Fecha de Ingreso: octubre-2001
Mensajes: 1.621
Antigüedad: 22 años, 5 meses
Puntos: 5
Re: Mostrar archivo por bloques

bueno chivi pos aqui tienes el codigo jeje
&lt;style&gt;
a{text-decoration:none}
&lt;/style&gt;
&lt;?
//El archivo se tiene que llamar paginador.php

$archivo=file(&quot;archivo.txt&quot;);//archivo.txt es el archivo que queremos paginar
$total=count($archivo);
$limite=20;//Limite es el numero de líneas que queremos mostrar
if(empty($pagina)){
$pagina=1;
}
if(empty($emp)){
$emp=0;
}
$paginas=$emp+$limite;
for($i=$emp;$i&lt;$paginas;$i++){
$dato= $archivo[$i];
echo $dato.&quot;&lt;br&gt;&quot;;
}
echo &quot;Página : &quot;;
$numerodepaginas=$total/$limite;
for($i=0;$i&lt;$numerodepaginas;$i++){
$b=$i*$limite;
echo &quot;&lt;a href=paginador.php?pagina=$i&amp;emp=$b&gt; |&quot; . $i .&quot;|&lt;/a&gt; &quot;;
}
?&gt;

Ya ve sun simple bucle solo tienes que contar el numero de archivos o de directorios y cambiar un poquito el codigo lo esencial lo tienes ahi

<table style="border:1px solid black"><tr><td><center>
<embed width="88" height="144" src="http://www.alaplaya.com/~epplestun/yo.swf"></td></td><font face=verdana size=1>Ivan Rodriguez el poder es [B]PHP</p></td></tr></table>
  #7 (permalink)  
Antiguo 01/03/2002, 13:00
 
Fecha de Ingreso: diciembre-2001
Ubicación: Madrid
Mensajes: 889
Antigüedad: 22 años, 3 meses
Puntos: 4
Re: Mostrar archivo por bloques

Como dije en un anterior post, muchas gracias por tu ayuda Ivan <img src='images/tongue.gif' width=15 height=15 align=middle>.

Un saludo.
  #8 (permalink)  
Antiguo 01/03/2002, 14:54
 
Fecha de Ingreso: enero-2002
Ubicación: Buenos Aires, Argentina
Mensajes: 193
Antigüedad: 22 años, 3 meses
Puntos: 0
Re: Mostrar archivo por bloques

a q te refieres por bloques? por que el codigo q te paso ivan es para paginar por linea sy tu dices q ya lo sabias, explicame por favor, saludos! :cantar:
  #9 (permalink)  
Antiguo 01/03/2002, 15:30
 
Fecha de Ingreso: diciembre-2001
Ubicación: Madrid
Mensajes: 889
Antigüedad: 22 años, 3 meses
Puntos: 4
Re: Mostrar archivo por bloques

Hola de nuevo cholyberreteaga!

Bueno pues... como dije en los primeros mensajes, lo que pretendía con los bloques, es numerar un archivo de texto cada X lineas, como aquí está en los Foros, cuando hay más de 15 mensajes.

En definitiva, si queremos paginar un archivo cada 10 líneas, y no supera ese valor, no mostrar el bloque de página (en este caso el 0 ó 1), y si supera ese valor, mostrar los bloques de las páginas siguientes (inclusive en la página que nos encontramos, pero sin poder linkar sobre el).

Esa sería la explicación correcta a lo que buscaba, y por ello dejé un código en el cual hace lo que quería conseguir, pero en este caso mostraba el de un directorio y lo que quería era hacerlo con un archivo de texto.

Últimamente veo post en los que se trata al usuario con cierta ironía y por ello, me ahorre todo el significado, ya que con lo que pusisteis, me sobra, para intentar aprender y conseguir el resultado deseoso y ahorrarme, si así lo consideraseis, criticas sobre mi pregunta..

Discúlpenme por el parrafito que os puse.
Gracias de nuevo por tu atención, cholyberreteaga

Saludos
  #10 (permalink)  
Antiguo 01/03/2002, 17:53
 
Fecha de Ingreso: enero-2002
Ubicación: Buenos Aires, Argentina
Mensajes: 193
Antigüedad: 22 años, 3 meses
Puntos: 0
Re: Mostrar archivo por bloques

muchas gracias por la explicacion de tu pregunta je, pero ahor ame ha qdado ams claro q er alo q querias...
bye!
  #11 (permalink)  
Antiguo 29/07/2002, 16:42
Avatar de CHuLoSoY  
Fecha de Ingreso: febrero-2002
Ubicación: Ribeira (Galicia)
Mensajes: 1.900
Antigüedad: 22 años, 2 meses
Puntos: 29
Re: Mostrar archivo por bloques

Esto es lo mismo que http://www.forosdelweb.com/mensaje.asp?id=64167 ???

Quiero decir, que en ese mensaje paginaba un archivo, y este código de ahora es para que si no hace falta paginar, no muestra nada??? No se para que sirve por eso pregunto-.

Saludos.

<center><hr size="1" color="blue" width="39%"><a href="http://www.ommadawn.es.vg" target="_blank">www.Ommadawn.es.vg</a><hr size="1" color="blue" width="39%">
  #12 (permalink)  
Antiguo 03/08/2002, 15:44
Avatar de CHuLoSoY  
Fecha de Ingreso: febrero-2002
Ubicación: Ribeira (Galicia)
Mensajes: 1.900
Antigüedad: 22 años, 2 meses
Puntos: 29
Re: Mostrar archivo por bloques

Alguien me puede responder, por favor? :(

<center><hr size="1" color="blue" width="39%"><a href="http://www.ommadawn.es.vg" target="_blank"><font color="red">www.Ommadawn.es.vg[/CODE]</a><hr size="1" color="blue" width="39%">
  #13 (permalink)  
Antiguo 03/08/2002, 20:27
 
Fecha de Ingreso: diciembre-2001
Ubicación: Madrid
Mensajes: 889
Antigüedad: 22 años, 3 meses
Puntos: 4
Re: Mostrar archivo por bloques

Hola CHuLoSoY
Encantadamente te respondo:

Sí es lo mismo.

El código lo que hace, es paginarte los registro que tengas en un TXT, y en el caso de que ese número no supere el límite por página, te mostrará los resultados y el número de página (normalmente el 1).
En caso de que supere el límite, te irá mostrando páginas cada X registros.

Espero te sea ahora más claro.
Saludos :)
  #14 (permalink)  
Antiguo 04/08/2002, 16:02
Avatar de CHuLoSoY  
Fecha de Ingreso: febrero-2002
Ubicación: Ribeira (Galicia)
Mensajes: 1.900
Antigüedad: 22 años, 2 meses
Puntos: 29
Re: Mostrar archivo por bloques

Entonces el otro no mostraba? Me ha quedado claro muchas gracias, este script es muy útil.

<center><hr size="1" color="blue" width="39%"><a href="http://www.ommadawn.es.vg" target="_blank"><font color="red">www.Ommadawn.es.vg[/CODE]</a><hr size="1" color="blue" width="39%">
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:24.