Foros del Web » Programando para Internet » PHP »

Impresión?

Estas en el tema de Impresión? en el foro de PHP en Foros del Web. Necesito realizar un script que me recorra toda la página web y que me elimine todo lo que está entre los TAGS pero no se ...
  #1 (permalink)  
Antiguo 06/04/2003, 11:02
Avatar de Reynier  
Fecha de Ingreso: noviembre-2002
Ubicación: Por ahí en algún sitio
Mensajes: 1.844
Antigüedad: 15 años
Puntos: 1
Pregunta Impresión?

Necesito realizar un script que me recorra toda la página web y que me elimine todo lo que está entre los TAGS pero no se como hacerlo en PHP, esto es para hacer una página de impresión.

Saludos
__________________
Ing. Reynier Pérez Mira
  #2 (permalink)  
Antiguo 06/04/2003, 21:51
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Te recomiendo que lo hagas via CSS (estilos en cascada) .. Puedes tener dos CSS para dos médios: uno "pantalla" y otro "impresora" .. Cuando mandes a imprimir una página (sea via javascript print() .. o dandole al boton imprimir de tu navegador ..) se selecciona automáticamente el CSS apropiado para impresión (con su tipografía adecuada y demas propiedades de tus tablas/capas o lo que uses ..).

Si aún así quieres hacerlo via PHP .. tendras que hacer:
1) leer la página HTML a una variable ..
Eso lo puedes hacer via file() y usar implode() .. Para obtener tu HTML en un string (cadena) ..

2) Pasarle una expresión regular tipo eregi_replace() para eliminar todos los <...> ..
Sería algo así:
Código PHP:
<?
$html 
implode (''file ('algo.html'));
echo 
nl2br(eregi_replace('<[^>]*>','',$html));
?>
El nl2br() convierte los salto de líneas \n del archivo HTML leido directamente a salto de línea HTML .. pos si lo quieres presentar al navegador .. Si lo vas a "guardar" en un archivo de texto sin tag's .. no usese nl2br()

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #3 (permalink)  
Antiguo 07/04/2003, 02:08
 
Fecha de Ingreso: agosto-2002
Ubicación: Colón - Entre Rios - Argentina
Mensajes: 647
Antigüedad: 15 años, 4 meses
Puntos: 8
Otra forma de quitar las etiquetas html es esta:
Código PHP:
$fp fopen ("archivo.html""r");
while (!
feof($fp)) {
    
$buffer fgetss($fp4096);
    echo 
$buffer;
}
fclose ($fp); 
Aca se usa fgetss para quitar los tag y posibles codigos php.
http://www.php.net/fgetss

Pero tambien esta strip_tags que hace lo mismo pero con una cadena.
http://www.php.net/strip_tags

Saludos!
  #4 (permalink)  
Antiguo 07/04/2003, 02:20
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 15 años, 11 meses
Puntos: 126
Jeje .. ahora q me dió por las expresiones regulares no había caido en la funcioncita strip_tag() de PHP ..

Por cierto .. en la página del manual sobre dicha función aparencen en los comentarios de los usarios varias alternativas y propuestas para eliminar HTML <tag> .. alugnas bastante interesantes ..
http://www.php.net/manual/en/function.strip-tags.php

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
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:37.