Autor | Zpráva | ||
---|---|---|---|
jey Profil * |
#1 · Zasláno: 17. 10. 2008, 22:29:45
ahojte potrebujem dako stiahnut pomocou php scriptu obrazok z externeho servera.
mam takyto kod: $nazov_suboru = "50.jpg"; $adr="http://terminal.sws.cz/img.asp?stiid=50"; $soubor = file_get_contents($adr); $fp2 = FOpen ($nazov_suboru, "w"); if ($fp2): FWrite ($fp2, $soubor); FClose ($fp2); endif; ked mam obrazok v tvare napr. www.ooosa.sk/50.jpg tak ho bez problemou stiahnem ale stakouto adresou http://terminal.sws.cz/img.asp?stiid=50 sa mi to nedary. viete mi poradit? dik |
||
svadla Profil |
#2 · Zasláno: 17. 10. 2008, 22:47:11 · Upravil/a: svadla
protoze http://terminal.sws.cz/img.asp?stiid=50 neni adresa obrazku, ten bude zobrazen nekde na te strance
adresu obrazku zjistis v jeho vlastnostech, zalezi na prohlizeci |
||
BetaCam Profil |
#3 · Zasláno: 17. 10. 2008, 22:55:47
svadla
„protoze http://terminal.sws.cz/img.asp?stiid=50 neni adresa obrazku“ Vzhledem k tomu, že ten script posílá hlavičky image/jpeg tak se dá považovat tato adresa za obrázek. |
||
jey Profil * |
#4 · Zasláno: 17. 10. 2008, 23:02:37
no po kliknuti na ten link sa mi objavy obrazok ma to aj rozmery ale stiahnut nie a nie.
|
||
DJ Miky Profil |
#5 · Zasláno: 17. 10. 2008, 23:04:06
Vypisuje skript třeba nějakou chybu? Když si ten načtený obsah necháš vypsat a pošleš hlavičku image/jpeg, zobrazí se ti ten obrázek nebo ne?
|
||
jey Profil * |
#6 · Zasláno: 17. 10. 2008, 23:09:56
no mne prave nehodi ziadnu chybu a nevytvory mi ziadne subory
|
||
BetaCam Profil |
#7 · Zasláno: 17. 10. 2008, 23:14:31
jey
„no mne prave nehodi ziadnu chybu a nevytvory mi ziadne subory“ tak si zapni error_reporting(E_ALL); Spustil sem ten tvůj script u sebe na localu a obrazek se normálně stáhnul a uložil na disk. |
||
imploder Profil |
#8 · Zasláno: 18. 10. 2008, 00:25:28
Pokud chceš vyvolat okno pro stahování souboru, tak použij hlavičku
Content-Type: application/octet-stream název souboru (v okně pro uložení) se dá určit takto: Content-Disposition: attachment; filename="nazev.pripona" |
||
BetaCam Profil |
#9 · Zasláno: 18. 10. 2008, 00:37:24 · Upravil/a: BetaCam
jey
Jinak problém s tim, že se ti nedaří obrázek stahnout a uložit na tvůj server bych s velkou pravděpodobností přisuzoval tomu, že asi máš direktivu allow_url_fopen nastavenou na 0 |
||
jey Profil * |
#10 · Zasláno: 18. 10. 2008, 08:47:25
no tu direktivu mam nastavenu na hodnotu ON na localhoste a tam my vypise chybu
Warning: fopen(00000050.jpg ) [function.fopen]: failed to open stream: Invalid argument in C:\wamp3\www\rss\kateg2.php on line 16 Ked to skusam na webe na jednom servery tak tam mam direktivu na: v kolonke Local Value mam OFF a v master value mam ON to su hodnoty ktore ziskavam cez phpinfo(); tam my zase hodilo chybu: Warning: file_get_contents() [function.file-get-contents]: URL file-access is disabled in the server configuration in /domains1/do1167000/public/www_root/images/kateg2.php on line 15 |
||
jey Profil * |
#11 · Zasláno: 18. 10. 2008, 12:49:28
no teraz som to skusal na jednom servery neviem ako tam je nastavena ta direktiva lebo mi tam nejde phpinfo ale vsetko prebehne korektne, subory vytvory len sa mi nedaju potom z ftp stiahnut. subory maju nazby a aj velkost ale stiahnut sa mi nedaju. stiahnut sa da len posledny obrazok. ja ich totizto stahujem v cykle. v subore mam nazvy obrazkou a postupne riadok po riadku prechadzam a vymienam nazvy suboru. Nechyba mi vtom subore nieco ako zavretie suboru? toho co stiahnem?
lebo vazne neviem co je tam zle? ked si ho dam stiahnut v total comandery napise mi ze Chyba pri prijmani suboru |
||
jey Profil * |
#12 · Zasláno: 19. 10. 2008, 13:04:57
nevie mi niekto poradit?
|
||
BetaCam Profil |
#13 · Zasláno: 19. 10. 2008, 13:32:30
jey
„ fopen(00000050.jpg ) [function.fopen]: failed to open stream: Invalid argument in“ Špatný počet argumentů chybí ti tam mód pro otevření souboru „Warning: file_get_contents() [function.file-get-contents]: URL file-access is disabled in the server configuration in“ Tato chyba je způsobena nastavením directivy allow_url_fopen na 0 ( Off ) ¨ $fp2 = FOpen ($nazov_suboru, "w"); if ($fp2): FWrite ($fp2, $soubor); FClose ($fp2); endif; místo tohohle kódu by se dal použít zápis file_put_contents($nazov_souboru, $soubor); |
||
jey Profil * |
#14 · Zasláno: 19. 10. 2008, 21:18:37
no skusal som ono mi to tam aj stiahne subor je normalne v adresari ma nazov velkost ale neda sa to z ftp stiahnut ani otvorit. Ide otvorit a stiahnut len posledny z cyklu:
cely kod: $subor = fopen("kod_id_obr.txt","r"); while(!feof($subor)) { $riadok = fgets($subor); $pole = explode(",",$riadok); $nazov_suboru = $pole[2]; $adr="http://terminal.asew.cz/img.asp?stiid=".$pole[1]; file_put_contents($nazov_suboru, file_get_contents($adr)); echo $fp2; }; fclose($subor); |
||
Časová prodleva: 16 let
|
0