Autor | Zpráva | ||
---|---|---|---|
Yuff.3 Profil |
#1 · Zasláno: 21. 2. 2015, 22:12:40
Ahojte,
potreboval by som sa dostať k súboru z ftp (s koncovkou .dat) takým spôsobom, aby som ho celý tak ako je načítal do premennej. Resp. keď sa súbor nachádza v zložke kde aj web - viem sa k nemu dostať asi takto: $asd = new asdfasdf('xxx.dat'); alebo si ten súbor dám do premennej $pokus = "xxx.dat"; a zapíšem to len takto: $asd = new asdfasdf($pokus); - funguje to.
pokiaľ sa však chcem dostať k súboru ktorý je uložený na FTP - nastáva problém (asi ho neviem správne otvoriť) $ftp_server = "XXX"; $ftp_user = "XXX"; $ftp_pass = "XXX"; $cesta = "ftp://$ftp_user:$ftp_pass@$ftp_server:21/cesta/xxx.dat"; $myfile = fopen("$cesta", "r") or die("Nie je možné otvoriť!"); $asd = new asdfasdf($myfile); fclose($myfile); zle použitá funkcia fopen? nájde sa tu niekto kto mi ju vysvetlí? moc ďakujem. |
||
juriad Profil |
#2 · Zasláno: 21. 2. 2015, 22:18:22
Konstruktor
asdfasdf nejspíš chce název souboru a nikoli ukazatel na soubor.
Je asdfasdf tvá, smíš ji upravit?
Pokud ano, můžeš změnit chování tak, že vždy bude chtít otevřený soubor (a vždy tedy budeš muset provádět fopen), nebo ho můžeš otevírat podle datového typu argumentu. Pokud tu třídu nemůžeš upravit, nezbyte ti nic jiného než ten soubor stáhnout, následně s ním pracovat a na konci jej smazat. |
||
Yuff.3 Profil |
juriad:
„Konstruktor asdfasdf nejspíš chce název souboru a nikoli ukazatel na soubor.“ áno, to je asi pravda. jak mu mám teda predať ten názov tak, aby to pochopil a začal pracovať?? „Je asdfasdf tvá, smíš ji upravit?“ bohužiaľ nie - resp. upraviť by sa to možno dalo, ale také skúsenosti nemám - netrúfam si na to. Určite existuje priaznivejšie riešenie.. „nebo ho můžeš otevírat podle datového typu argumentu.“ to je ako? „Pokud tu třídu nemůžeš upravit, nezbyte ti nic jiného než ten soubor stáhnout, následně s ním pracovat a na konci jej smazat.“ to nie je moc vyhovujúce riešenie. či? Zostáva mi asi len zistiť ako pracuje tá trieda (konštruktor) a následne tomu prispôsobiť aj môj kód. |
||
Tomáš123 Profil |
#4 · Zasláno: 21. 2. 2015, 22:24:26
juriad:
A nešlo by to pomocou obyčajného file_get_contents ?
|
||
juriad Profil |
#5 · Zasláno: 21. 2. 2015, 22:29:50
Tomáš123:
Tím ten soubor stáhneš. Chce-li však konstruktor asdfasdf jméno souboru, musíš mu dát jméno souboru, nikoli obsah souboru.
> „nebo ho můžeš otevírat podle datového typu argumentu.“ > to je ako? To byla alternativa pro případ, že ten kontruktor můžeš upravit. |
||
Yuff.3 Profil |
Moja chyba - vlastne stačilo v #1
$asd = new asdfasdf($cesta);
ĎAKUJEM |
||
Yuff.3 Profil |
#7 · Zasláno: 22. 2. 2015, 00:47:03
Dovolím si ešte otázočku - k bezpečnosti.
povecme, že to používam takto: $ftp_server = "XXX"; $ftp_user = "XXX"; $ftp_pass = "XXX"; $cesta = "ftp://$ftp_user:$ftp_pass@$ftp_server:21/cesta/xxx.dat"; $asd = new asdfasdf($myfile); Používam to len tak ako som napísal no a k premenným pristupujem potom cez htmlentities a htmlspecialchars - (aký je medzi nimi vlastne rozdiel?) Ďakujem za objasnenie. |
||
Časová prodleva: 9 let
|
0