aog Skrevet 9. juli 2004 Del Skrevet 9. juli 2004 (endret) Hei.. ..igjen. Er det mulig å hente ut ting fra en ekstern webside alt som står eks. fra linje 20 til linje 55? Lurte på include eller noe slikt. Hvordan gjør jeg dette? EDIT: Ups.. Feil forum.. Moderator, har en jobb til deg her Endret 9. juli 2004 av aog Lenke til kommentar
Torbjørn Skrevet 9. juli 2004 Del Skrevet 9. juli 2004 du skriver ikke at du ønsker å bruke php, men gjettr meg til det: slik får du et array med linjer fra 20 til 55 fra en url $html=array_slize(file('http://whatnot/'),20,35); Lenke til kommentar
aog Skrevet 9. juli 2004 Forfatter Del Skrevet 9. juli 2004 ja :-p Det var php jeg var ute etter. takker.. men.. noe som sikkert kjent, så er jeg php uber n00b, så jeg fikk Fatal error: Call to undefined function: array_slize() in /home/housemaa/public_html/stats.php on line 2 Så da lurer jeg på.. hva er trkset? lol Lenke til kommentar
???????? Skrevet 9. juli 2004 Del Skrevet 9. juli 2004 (endret) Det finnes ingen funksjon som heter array_size(), forsøk med array_slice(). Endret 9. juli 2004 av ???????? Lenke til kommentar
aog Skrevet 9. juli 2004 Forfatter Del Skrevet 9. juli 2004 joa.. det hjalp på.. ingen feilmeldinger nå, men... hehe.. siden er blank. Noe jeg må legge til for at det skal virke? en ting til.. når jeg gjør slik, det er html kodene som blir lest, og ikke det du ser på skjermen sant? Lenke til kommentar
Torbjørn Skrevet 9. juli 2004 Del Skrevet 9. juli 2004 array_slice ja ikke så greit alltid. Lenke til kommentar
dabear Skrevet 9. juli 2004 Del Skrevet 9. juli 2004 Kommer med et nyttig alternativ hvis man ønsker å finne et spesielt "merke" i ei side, som man begynner å skrive ut innholdet helt til neste "merke" finnes. Litt dårlig forklart men du skjønner poenget, håper det kan være til nytte <?php function remove_start_and_beginning($file_source, $lookfor_first, $end_where) { if($file_source && $lookfor_first && $end_where) { $kildekode = file_get_contents($file_source); $startpunkt = strpos($kildekode, $lookfor_first); // finn posisjon av $lookfor_first i $file_source / $kildekode $kildekode = substr($kildekode, $startpunkt); // Ta vekk alt før $lookfor_first $kildekode = '<table width="100%" border="0" cellspacing="2" cellpadding="0"><tr><td colspan="7" align="left">'.$kildekode; $sluttpunkt = strpos($kildekode, $end_where) + stlen($end_where); //finn posisjon til $end_where i den nyeste forekomsten av $kildekode $kildekode = substr($kildekode, 0, $sluttpunkt) // fjern alt etter siste $end_where } else { $denne = __FUNCTION__; $wrong = <<<wrong <div> The Synthax for this funktion, $denne, is: </div> <strong> db ( string file_source , string begin_parse_with_html_command , string stop_parse_with_html_command) </strong> The error occured wrong; trigger_error($wrong, E_USER_ERROR); } } ?> Lenke til kommentar
???????? Skrevet 9. juli 2004 Del Skrevet 9. juli 2004 Det stemmer at det er html linje 20 - 55, men du kan ikke bruke echo $html. Du kan f.eks. bruke foreach($html as $line){ echo $line } Lenke til kommentar
aog Skrevet 10. juli 2004 Forfatter Del Skrevet 10. juli 2004 hmmm..... Kan jeg includere en hel side, men bare vise eks: linje 20-50? Lenke til kommentar
Rescudo Skrevet 10. juli 2004 Del Skrevet 10. juli 2004 Er det ikke bare å forandre tallene i tidligere oppgitt kode? [code] $html=array_slice(file('url'),20,50); //<-- disse tallene bestemmer linjenummer... foreach($html as $linje) { echo $linje; } [/code] Eller har jeg misforstått spørsmålet? Lenke til kommentar
aog Skrevet 10. juli 2004 Forfatter Del Skrevet 10. juli 2004 (endret) Vel.. med koden der, så får jeg ikke med f.eks: style, head, osv. Det jeg ønsker er å hente inn HELE siden, men bare vise et bestemt område. EDIT: En ting til.. Dersom jeg har en fil på www.yourserver.com som har en html-kode "eks: <img="/smile.gif>" is seg, og så bruker jeg php-koden du viste til, for å vise den på www.myserver.com, da får ikke jeg frem bilde. Kan det gjøres noe med? Endret 10. juli 2004 av aog Lenke til kommentar
Rescudo Skrevet 10. juli 2004 Del Skrevet 10. juli 2004 (endret) Denne koden inkluderer alt helt inntil den kommer til body. Deretter inkluderes linje 20-50 i siden, til slutt inkluderes </body></html>. $side_array = file('url'); //<--Endre foreach ($side_array as $linje) { $side .= $linje; } $end = strpos($side, '<body'); //<-- bestemmer hvor den skal slutte å inkludere... $head = substr($side, 0, $end); echo $head; $html = array_slice($side_array,20,50); //<-- disse tallene bestemmer linjenummer... foreach($html as $linje) { echo $linje; } echo "</body>"; echo "</html>"; Har ikke prøvd det selv, men det skal funke... hvis ikke har jeg surret med substr/strpos. EDIT: når det gjelder det andre problemet ditt (med feil urler) må du bytte ut alle relative urler på siden med absolutte, så de matcher. Jeg har null peiling på preg_replace og sliktnoe, så det får noen andre svare på... Lykke til! Endret 10. juli 2004 av opix 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å