Mailinglisten-Archive |
Hallo manu, Ich hab leider die original-email nicht mehr, aber beim mac ie ist das ein problem des ie. Hatte mich auch mal nen tag gekostet... :-) Bei speichern unter zeigt er grundsaetzlich z.b. Speichern unter "download.php" an. Danach startet ja aber automatisch der downloadmanager und dem teilt man den richtigen namen wie folgt mit, sowie zwingt ihn immer die datei downzuloaden statt im browser-plugin (bei pdfs, mpg usw) anzuzeigen: (alternativ kann man auch einfach die alt-taste beim klick auf den dl-link druecken und das ganze wandert automatisch unter dem im header angegebenen namen in den download-manager) <--- snip ---> $bild_org_name = "bild.jpg"; $bild_size = filesize($bildpath); header ("Expires: 0"); header ("Cache-Control: private, must-revalidate, post-check=0, pre-check=0"); header ("Content-type: application/force-download; filename=\"$bild_org_name\""); header ("Content-type: application/octet-stream; filename=\"$bild_org_name\""); header ("Content-type: application/download; filename=\"$bild_org_name\""); header ("Content-Description: \"$bild_org_name\""); header ("Content-Disposition: attachment; filename=\"$bild_org_name\";"); header ("Content-Transfer-Encoding: binary"); header ("Content-length: $bild_size"); $file = fopen ($bildpath, "rb"); fpassthru ($file); fclose ($file); Getestet auf fast allen browsern unter win, mac und unix. <--- snip ---> Bei ssl/https musst noch folgendes reinstellen: Wenn kein ssl, kannst du problemlos cachen, aber mit ssl zickt der ie auf der dose rum... session_cache_limiter("private_no_expire, must-revalidate"); session_cache_expire(0); session_start(); <--- snip ---> Und wenn ssl beim apache wie folgt, da sonst gar nix mehr geht mit downloads auf dem mac-ie geht: SSLEngine ON SSLProtocol all -SSLv3 #wegen ie 5 kompatibilitaet auf mac os 9 SSLCipherSuite !EXP1024-RC4-SHA:!EXP1024-DES-CBC-SHA:ALL:!ADH:!EXP56:RC4+RSA:+HIGH:+MEDIUM: +LOW:+SSLv2:+EXP:+eNULL SSLVerifyClient none SSLCertificateFile cert.crt SSLCertificateKeyFile cert.key <--- snip ---> Das sollte helfen... Versuch erst gar nicht was wegzulassen... Damits auf jedem browser laeufft muss alles rein... Lol... Gruesse, ray >>> ich hab bis jetzt immer damit abdecken können das ich als Downloadpfad >>> am ende download.php?fileid=123&filename=dateiname.ext > >> Ich versteh nicht ganz, was das bringt? OK, ich muss den Dateinamen nicht >> aus der DB holen, aber sonst? >
php::bar PHP Wiki - Listenarchive