Newsgroup: it.comp.www.php
Titolo: Include o altro?

Ciao a Tutti!
Ho provato (invano) a limitare l'include ai primi 200 caratteri di testo del
fileche viene richiamato... (file-incluso.html) ma... senza successo.
Avete qualche suggerimento ?
Ciao!!!!
Riccardo.


fread
include serve ad altro


 ha scritto nel messaggio
news:2oplbmF...@uni-berlin.de...


<?php
$handle = fopen("
http://IP/~directory/index.html
", "rb");
$contents = "";
do {
    $data = fread($handle, 16);
    if (strlen($data) == 0) {
        break;
    }
    $contents .= $data;
} while (true);
fclose($handle);
?>
Ho inserito questo script ma...
non visualizzo nulla.
Come mai?

 Avete qualche suggerimento ?
Magari ci sono modi migliori, ma puoi provare ad usare la
funzione file_get_contents():
<?php
$file = file_get_contents('file-incluso.html');
print (substr($file, 0, 200));
?>
Ulteriori informazioni su file_get_contents():
http://it2.php.net/manual/it/function.file-get-contents.php
Ciao.
-- 
Federico R.

Ho usato entrambi ed in linea di massima... funzionano ma...
Quello che mi server, è "catturare" da una pagina HTML il testo e i link
e riproporli in un'altra pagina con un'altra formattazione...
come fare?

 e riproporli in un'altra pagina con un'altra formattazione...
Be', questo però è un po' diverso da "includere i primi 200
caratteri di un file".
Credo tu debba utilizzare le espressioni regolari per
analizzare il contenuto del file e selezionare il testo che
desideri.
Puoi provare a prendere spunto dalla seguente guida
http://freephp.html.it/articoli/view_articolo.asp?id=69&pag=1
che inizia spiegando a grandi linee le espressioni regolari e
giunge a recuperare da una pagina html il testo contenuto tra
il tag <title>.
Ciao.
-- 
Federico R.

 ha scritto nel messaggio
news:1w4pveba...@ID-209163.user.uni-berlin.de...


Ho capito quanto basta...
ma mi serve un aiutino
La mia pagina contiene tante tabelle.
Dovre prendere il contenuto della tabella (senza le immagini) e
visualizzarlo.
1) Le immagini non servono e dovrei eliminarle
2) Devo fare questa operazione solo per le prime 3 tabelle (loop ciclico di
3)
Mi suggerite qualche cosa?  grazieeeeeeeeee!!!!
Riccardo.

Ho trovato questo script, che fa proprio al caso mio ma non riesco a capire
cosa non foìunzioni... non mi da nulla :(
http://php.us.themoes.org/manual/it/function.preg-replace.php
<?php
// $document contiene un documento HTML.
// In questo esempio la funzione rimuove i tag HTML,
// le sezioni javascript e gli spazi bianchi.
// Inoltre si convertirà le entità HTML nella loro
// rappresentazione testuale.
$search = array ("'<script[^>]*?>.*?</script>'si",  // Rimozione del
javascript
                 "'<[\/\!]*?[^<>]*?>'si",          // Rimozione dei tag HTML
                 "'([\r\n])[\s]+'",                // Rimozione degli spazi
bianchi
                 "'&(quot|#34);'i",                // Sostituzione delle
entità HTML
                 "'&(amp|#38);'i",
                 "'&(lt|#60);'i",
                 "'&(gt|#62);'i",
                 "'&(nbsp|#160);'i",
                 "'&(iexcl|#161);'i",
                 "'&(cent|#162);'i",
                 "'&(pound|#163);'i",
                 "'&(copy|#169);'i",
                 "'&#(\d+);'e");                    // Valuta come codice
PHP
$replace = array ("",
                 "",
                 "\\1",
                 "\"",
                 "&",
                 "<",
                 ">",
                 " ",
                 chr(161),
                 chr(162),
                 chr(163),
                 chr(169),
                 "chr(\\1)");
$text = preg_replace($search, $replace, $document);
?>

Ho provato in questo modo... ma non riesco a capire come fargli a
specificare $document assegnandolo ad uno specifico file.
Please, help !!!
<?php
// $document contiene un documento HTML.
// In questo esempio la funzione rimuove i tag HTML,
// le sezioni javascript e gli spazi bianchi.
// Inoltre si convertirà le entità HTML nella loro
// rappresentazione testuale.
$document = fopen("file.html", "r");



echo $text;
?>

 $document = fopen("file.html", "r");
[...]
fopen() restituisce un resource, non una stringa.
http://it2.php.net/manual/it/function.fopen.php
Usa la funzione file_get_contents() che ti ho indicato nel
primo post.
Ciao.
-- 
Federico R.







Finalmente...


 


ora perà ho una piccolissima ultima cosa da 
chiedervi...


 


Il mio testo ora è "pieno di apici"


 


es: "(July "29 2004)"


 


Dovrei:


 


1) Sostituire 
"(
 
con 
<br><br>(


2) Sostituire 
)"
 
con 
)<br><br>


3) Eliminare 
tutti gli 
" 

restanti


 


In questo modo, dovrei ottenere:


 


<br><br>(July 29 
2004)<br><br>


 


 


 


Grazie di tutto!


Riccardo



 3) Eliminare tutti gli " restanti
Puoi usare una delle seguenti funzioni:
str_replace()
URL: 
http://it2.php.net/manual/it/function.str-replace.php
ereg_replace()
URL: 
http://it2.php.net/manual/it/function.ereg-replace.php
preg_replace()
URL: 
http://it2.php.net/manual/it/function.preg-replace.php
Ciao.
-- 
Federico R.