Smidt Skrevet 27. januar 2004 Del Skrevet 27. januar 2004 jeg bruker følgende script for å hente skiinformasjon fra Voss. <? $hent_fra_url = "http://www2.skiinfo.no/voss-fjellheisar/varrapport.php3"; // Full adresse til dokumentet du vil hente fra. $kildenavn = "Voss Skiheiser"; $kildeurl = "http://www2.skiinfo.no/voss-fjellheisar/"; print("<b>Voss Skisenter</b><p>"); $hent_start = "<!--start here-->"; $hent_slutt = "<!--end here-->"; $file = fopen("$hent_fra_url", "r"); $rf = fread($file, 528); $grab = eregi("$hent_start(.*)$hent_slutt", $rf, $printing); $printing[1] = str_replace("Articles", "Artikler", $printing[1]); fclose($file); echo $printing[1]; print("<h5>Kilde: <a href='$kildeurl'>$kildenavn</a></h5></font>"); ?> den eneste forandringen jeg har gjort fra det opprinnelige scriptet er er å forandre fread($file, 528) til 528 (var 5000 før). grunnen til dette er at jeg ikke vil ha med alt på siden. Siden jeg ikke fant noen andre punkter jeg kunne avslutte ved reduserte jeg på lengden som skal leses, men dette funker ikke. noen som vet hvorfor? eller kanskje noen som ser et punkt jeg kan bruke som "$hent_slutt"? Lenke til kommentar
[kami] Skrevet 27. januar 2004 Del Skrevet 27. januar 2004 When reading from network streams or pipes, such as those returned when reading remote files or from popen() and proc_open(), reading will stop after a packet is available. This means that you should collect the data together in chunks as shown in the example below. <?php $handle = fopen("http://www.example.com/", "rb"); $contents = ""; do { $data = fread($handle, 8192); if (strlen($data) == 0) { break; } $contents .= $data; } while (true); fclose($handle); ?> Scriptet ditt vil da lese ut det som ligger mellom taggene "<!--start here-->" og "<!--end here-->"; Om de taggene ikke finnes i dokumentet vil det være tomt det du får tilbake (er vel muligens dette du opplever) Lenke til kommentar
FuLu Skrevet 27. januar 2004 Del Skrevet 27. januar 2004 Blir vel uansett vanskelig å beregne hvor mye data akuratt du skal kunne laste ned for ditt formål, innhold kan jo alltid forandre seg. Hvis du bruker siste versjon av PHP hvertfall >= 4.3.0, så kan du bruke file_get_contents, da får du hele siden i en variabel som tekststreng. Så bruker du den eregi saken din til å matche/hente ut data mellom start og slutt tag'ene. Lenke til kommentar
Smidt Skrevet 27. januar 2004 Forfatter Del Skrevet 27. januar 2004 får prøve meg litt til, lærer best sånn. Lenke til kommentar
[kami] Skrevet 27. januar 2004 Del Skrevet 27. januar 2004 hva med å prøve å laste hele sida først? og når du vet det funker kan du jo knote med reg expen din Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå