Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno PHP - přenos souboru

Zdravím, mám "problémek"...
Mám soubor txt na webhostingu a mám Apache2 s PHP5 i na svém PC doma. Pokouším se scriptem, běžícím doma, stáhnout onen vzdálený txt na své PC...
Vypadá to asi takhle:

$f=fopen("http://neco.cz/data.txt", "r");
$g=fopen("data.txt", "w");
$data=fread($f, "100000");
fwrite($g,$data,"100000");
fclose($f);
fclose($g);

Mno - zdánlivě to funguje, jenže výsledný soubor je malý, vždy se přenese jen prvních zhruba 8460 bajtů a utne se to... bez nějaké hlášky, jen prostě se soubor nepřenese celý...
Nějaký nápad, co by mohlo být příčinou? Nebo lepší řešení?

Není nutno každý řádek kódu ohraničovat tagem [code], stačí do něj uzavřít celý kód - opraveno (host)

Předmět Autor Datum
Máš omezenou velikost čtení souboru na 100000 bytů. Navíc máš podle mě to číslo zbytečně v uvozovkác…
host 19.01.2008 20:07
host
Ne, nezabralo odebrání uvozovek (nemělo by mít vliv a na druhé straně se ten soubor vytváří stejně b…
Vlasta Kašpar 19.01.2008 20:56
Vlasta Kašpar
Vyřešeno - stačilo ten vzdálený soubor načítat funkcí file_get_contents a jede to zcela správně 8-) poslední
Vlasta Kašpar 19.01.2008 21:42
Vlasta Kašpar

Máš omezenou velikost čtení souboru na 100000 bytů. Navíc máš podle mě to číslo zbytečně v uvozovkách.

Zkus to změnit takto:

$filename = "http://neco.cz/data.txt";
$data = fread ($f, filesize ($filename));
fwrite($g,$data,filesize ($filename));

Ne, nezabralo odebrání uvozovek (nemělo by mít vliv a na druhé straně se ten soubor vytváří stejně bez problému) - a filesize jak se zdá nefunguje na vzdálené soubory... Ta hodnota 100 000 je dostatečná... ostatně přenese se mnohem méně... Není to stabilní, někdy se přenese zhruba dvojnásobek... mě to připadá, jako by se spíš vyčerpal nějaký čas, nebo tak něco... Nemyslím teď čas běhu scriptu, ten je na obou stranách 30 sekund a běží to jen zlomek...

Zpět do poradny Odpovědět na původní otázku Nahoru