Új hozzászólás Aktív témák
-
Sk8erPeter
nagyúr
Ennek örülök, bár ha egy modi mondja azt, hogy na kuss, akkor általában azzal agyon is van csapva a szakmai beszélgetés. Most már komoly felelősség terhel minden szavadért.
Bocs, de "force a download in php" kulcsszavakkal rákeresve, meg a PHP header() manualját megnézve is elég sok olvasmányt találni a témában... Mintha épp az előbb lett volna szó a 2 perc Google-ről.
De a felvetést nem is értem, miért kell általad fejlesztett oldalhoz cURL? Vagy csak félreértettem a kérdésedet?(#11837) j0k3r! :
jaja, pontosan. Elég régóta érdektelenek a topicbeli kérdések is, most legalább valami érdekesről van (volt) szó.[ Szerkesztve ]
Sk8erPeter
-
Speeedfire
nagyúr
Sima egyszerű header manipulálást.
<?php
$file = str_replace('../','',$_GET['file']);
header ("Content-type: octet/stream");
header ("Content-disposition: attachment; filename=".$file.";");
header("Content-Length: ".filesize($file));
readfile($file);
exit;
?>Még mielőtt Athlon beszóna' ez csak egy alap példa!
Fotóim https://fb.com/toth.szabolcs.art || IG: http://instagram.com/_tothszabolcs_ || Weblapom http://szabolcs-toth.com
-
cucka
addikt
Nem kell hozzá curl. Lényegében a galéria letöltős linked egy php oldalra fog mutatni (mondjuk oldaladneve/download_gallery.php?gallery_id=5 ). A php szkript összeszedi a galéria file-jait, bezippeli és elküldi a kliensnek. A küldés lényegében annyit jelent, hogy beállítod a megfelelő header-eket (elsősorban content-type), majd egyszerűen kiírod a zip file tartalmát a standard kimenetre (vagy csinálhatod fpassthru-val is, gyorsabb).
A kényes kérdés itt a zip-elés. Több lehetőséged van:
- A php zip eszközeivel menet közben állítod elő a zip filet. Ezzel az a baj, hogy hamar ki fog futni a memóriából a php.
- A php meghív egy shell script-et, ami elvégzi a zip-elést (parancssoros zip-el), a zip filet lerakja a temp-be. Te onnan fpassthru-val kiköpöd a standard kimenetre, majd törlöd a filet.
- Minden galéria módosításnál elkészíted a zip filet, így bármelyik galériát is szeretné letölteni a júzer, csak átdobod neki a meglévő filet. Ez jó, ha ritkán változik a galéria, viszont gyakran töltik le egyben. A zip file elkészítésére a fenti 2 pont érvényes.(#11840) Speeedfire
Ez jó, csak az alap probléma, hogy nem 1 file-ról van szó, hanem többről (galéria). Ezért a zip-elés.mod: továbbá érdemes tudni, hogy a böngészők igyekeznek intelligensen kezelni az érkező file-okat. Ezért van az, hogy egy zip filet automatikusan felajánl letöltésre anélkül, hogy varázsolni kéne a http header-ekkel. Nyilván, egy jpeg file-nál rá kell erőltetni ugyanezt a viselkedést a megfelelő header-ek segítségével.
[ Szerkesztve ]
Új hozzászólás Aktív témák
- Autós topik látogatók beszélgetős, offolós topikja
- Elemlámpa, zseblámpa
- AMD GPU-k jövője - amit tudni vélünk
- PlayStation 5
- Politika
- Honor Magic6 Pro - kör közepén számok
- NVIDIA GeForce RTX 4080 /4080S / 4090 (AD103 / 102)
- Kerékpárosok, bringások ide!
- Arena Breakout: Infinite
- Autós topik
- További aktív témák...
- Samsung Galaxy S22 Ultra 5G 256GB, Kártyafüggetlen, 1 Év Garanciával
- HP Victus 16-r1019nt - ÚJ 16" FullHD IPS GAMER notebook - i7-14700HX, 32GB, RTX 4070
- HP Victus 16-r1041nt - ÚJ 16" FullHD IPS GAMER notebook - i7-14700HX, RTX 4060
- HP Victus 16-r0024nf - ÚJ 16" FullHD IPS GAMER notebook - i5-13500H,16GB, 512SSD, RTX 4060
- Gamer PC Intel i5 9400/16GB DDR4/GTX 1660 6GB/256GB SSD/500/GB HDD/Beszámítás/Garancia/
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: Ozeki Kft.
Város: Debrecen