---
title: "wget och FSData"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/154304-wget-och-fsdata"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "StinaD"
published: "2006-11-28T17:43:37.000Z"
updated: "2006-11-29T16:34:16.000Z"
replies: 14
views: 739
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/php/154304-wget-och-fsdata"
---

# wget och FSData

## #1 — StinaD, 2006-11-28T17:43Z

Hej igen! Har lusläst manualen på FSdata och där står:

"PHP har inbyggda funktioner för att öppna filer över nätverket, tex genom kommandot fopen(). Detta medför dessvärre också stora säkerhetsrisker, då felaktigt skriven PHP-kod kan missbrukas av utomstående för att bryta sig in på webplatsen eller använda webplatsen som avsändare av skräppost. F S Data har därför valt att stänga av allow_url_fopen i PHP-konfigurationen (med start 1:e november 2006).

I de fall man verkligen behöver öppna filer över nätverket så används kommandot wget:
// Läs in fil.txt från annandomän.se och spara i variabeln $data:
$data = \`wget <http://annandoman.se/fil.txt> \-O -\`;

I undantagsfall kan man dock temporärt behöva aktivera allow_url_fopen för någon del av webplatsen."

Då jag har allow_url_fopen påslagen fungerar koden jag skrivit med hjälp av er här i forumet. Men slår jag av den går det inte. Verkar alltså som att jag måste ändra till det där wget för att göra FSdata glada ...

Har letat på <http://se.php.net> men där finns inte wget med ens en gång.

Min fungerande kod ser ut så här:
\<?php
$context=array('http' =\> array ('header'=\> 'Range: bytes=1024-', ),);
$xcontext = stream_context_create($context);
$str=file_get_contents("http://www2.tellus.no/tellus/db.dll?co=SE&sp=SE&db=254&icp=hoor/1/productList&ek=1&ek=2&pt=1&so=1&dv_so=1&lla=10&dv_lla=10",FALSE,$xcontext);
echo $str;
?\>

Och resultatet finns på <http://turisthoor.se/gora/test2.php>

Någon som är expert på wget???

Permalänk: https://www.webforum.nu/p/154304

## #2 — Dies_Irae, 2006-11-28T18:26Z

En spontan gissning :)

Är inte wget ett shellkommando så du tex måste göra:

\<? exec("wget $url /spara/i/katalog");  ?\>

eller med lite tur

\<? $data = exec("wget $url"); ?\> 

hm, säkert fel men sök lite på de, borde finnas :)

Permalänk: https://www.webforum.nu/p/1902781

## #3 — StinaD, 2006-11-29T09:13Z

Tack, ska testa!

Permalänk: https://www.webforum.nu/p/1903060

## #4 — The_Hulk, 2006-11-29T09:22Z

Har du testat kodraden FS-data hade i sin hjälp?

```php
$data = `wget http://www2.tellus.no/tellus/db.dll?co=SE&sp=SE&db=254&icp=hoor/1/productList&ek=1&ek=2&pt=1&so=1&dv_so=1&lla=10&dv_lla=10 -O -`;
```

Permalänk: https://www.webforum.nu/p/1903061

## #5 — StinaD, 2006-11-29T09:37Z

Ja, och det fungerade inte. Gissar att det beror på att jag inte vet vad som ska stå runt omkring. Är alldeles ny på php ...

Permalänk: https://www.webforum.nu/p/1903066

## #6 — Gein, 2006-11-29T09:51Z

wget är inte en funktion i php utan ett program.
Fungerade inte Dies_Iraes tips?

Permalänk: https://www.webforum.nu/p/1903070

## #7 — The_Hulk, 2006-11-29T09:51Z

vad hände när du försökte använda koden i förra posten?

Permalänk: https://www.webforum.nu/p/1903071

## #8 — The_Hulk, 2006-11-29T09:52Z

det är viktigt att få med de två små \` tecknen runt \`wget ... -O -\`

Permalänk: https://www.webforum.nu/p/1903073

## #9 — StinaD, 2006-11-29T11:20Z

Skriver jag så här så kommer det upp en blank sida:
  \<?php
$context=array('http' =\> array ('header'=\> 'Range: bytes=1024-', ),);
$xcontext = stream_context_create($context);
$str = \`wget <http://www2.tellus.no/tellus/db.dll?co=SE&sp=SE&db=254&icp=hoor/1/productList&ek=1&ek=2&pt=1&so=1&dv_so=1&lla=10&dv_lla=10> \-O -\`; 
echo $str;
?\>

Permalänk: https://www.webforum.nu/p/1903100

## #10 — StinaD, 2006-11-29T11:27Z

Även detta ger en blank sida:
  \<?php
$context=array('http' =\> array ('header'=\> 'Range: bytes=1024-', ),);
$xcontext = stream_context_create($context);
$str = exec("\`wget <http://www2.tellus.no/tellus/db.dll?co=SE&sp=SE&db=254&icp=hoor/1/productList&ek=1&ek=2&pt=1&so=1&dv_so=1&lla=10&dv_lla=10> \-O -\`; ");
echo $str;
?\>

Inser att jag behöver förstå mer om syntaxen i php ...

Permalänk: https://www.webforum.nu/p/1903103

## #11 — The_Hulk, 2006-11-29T13:33Z

testa

```php
<?php
$str = shell_exec("wget http://www2.tellus.no/tellus/db.dll...la=10&dv_lla=10 -O -");
echo $str;
?>
```

eller (d.v.s. utan sista - efter -O, vet inte vad det gör)

```php
<?php
$str = shell_exec("wget http://www2.tellus.no/tellus/db.dll...la=10&dv_lla=10 -O");
echo $str;
?>
```

Permalänk: https://www.webforum.nu/p/1903142

## #12 — StinaD, 2006-11-29T14:44Z

Nu har jag testat alla varianter av era förslag, med och utan shell_exec, \`och -
Jag får inga felmeddelanden, men sidan är tom.

Har också sökt på Google och surfat runt och läst en massa om wget, verkar mest användas för att hämta filer i Linuxsammanhang???

Funktionen att hämta in data från en server och presentera den på en annan kan ju inte vara något ovanligt? Tycker att jag borde hitta massor med exempel.

Permalänk: https://www.webforum.nu/p/1903164

## #13 — Gein, 2006-11-29T15:27Z

Provat slå på error_reporting?

Permalänk: https://www.webforum.nu/p/1903177

## #14 — The_Hulk, 2006-11-29T15:53Z

wget är ett linux/unix program (finns även för windows m.m. nu)
shell_exec används för att köra extärna program inne i PHP-koden.
Har du testat att fråga FS-datas support?
De borde ju kunna hjälpa dig i och med att du hittade informationen om wget där.

Permalänk: https://www.webforum.nu/p/1903186

## #15 — StinaD, 2006-11-29T16:34Z

FSdatas support är ganska svåråtkomlig, men det är nog det som ligger överst i högen just nu. Stort tack för all hjälp så här långt!

Tack för tipset om error_reporting det ska jag använda framöver!

Permalänk: https://www.webforum.nu/p/1903198

---

Tråden på webben: https://www.webforum.nu/amne/php/154304-wget-och-fsdata
