PDA

Volledige versie bekijken : Jpg opslaan via Flash


Alexander
%Europe/Berlin %428 %2005, 11:16
Is het mogelijk om een jpg op mijn server via flash op te slaan op mijn computer. Dat mensen hem zien en dan op een knop kunnen drukken om hem op te slaan?

Dauntless
%Europe/Berlin %429 %2005, 11:18
Dat is alleen mogelijk dmv een component: YamzBrowser (http://www.actionscript.org/components/showComponent.php?id=26)

Alexander
%Europe/Berlin %440 %2005, 11:34
Ik bedoel dat het op mijn server staat en ik het naar mijn computer zetten.

Dauntless
%Europe/Berlin %444 %2005, 11:40
Ah, sorry. Je kan hem openen met getURL en hem dan laten opslaan... Je kan hem ook in een .zip zetten, die wordt automatisch aangeboden om te downloaden. Misschien kan je een forced download doen via javascript maar daar ben ik niet zeker van.

Alexander
%Europe/Berlin %450 %2005, 11:49
Het is de bedoeling dat hij gelijk gedownload word, tenminste dat je zon download schermpje krijgt

Dauntless
%Europe/Berlin %451 %2005, 11:50
Dat hangt af van de instellingen van de client... Daar kun jij weinig aan veranderen.

Alexander
%Europe/Berlin %459 %2005, 12:01
Ik heb inmiddels dit kleine scriptje, van een forced download iets zou iemand me erbij kunnen helpen php is niet mijn sterkste punt.

<?php

function dl_file($file){

//First, see if the file exists
if (!is_file($file)) { die("<b>404 File not found!</b>"); }

//Gather relevent info about file
$len = filesize($file);
$filename = basename($file);
$file_extension = strtolower(substr(strrchr($filename,"."),1));

//This will set the Content-Type to the appropriate setting for the file
switch( $file_extension ) {
case "pdf": $ctype="application/pdf"; break;
case "exe": $ctype="application/octet-stream"; break;
case "zip": $ctype="application/zip"; break;
case "doc": $ctype="application/msword"; break;
case "xls": $ctype="application/vnd.ms-excel"; break;
case "ppt": $ctype="application/vnd.ms-powerpoint"; break;
case "gif": $ctype="image/gif"; break;
case "png": $ctype="image/png"; break;
case "jpeg":
case "jpg": $ctype="image/jpg"; break;
case "mp3": $ctype="audio/mpeg"; break;
case "wav": $ctype="audio/x-wav"; break;
case "mpeg":
case "mpg":
case "mpe": $ctype="video/mpeg"; break;
case "mov": $ctype="video/quicktime"; break;
case "avi": $ctype="video/x-msvideo"; break;

//The following are for extensions that shouldn't be downloaded (sensitive stuff, like php files)
case "php":
case "htm":
case "html":
case "swf":
case "txt": die("<b>Cannot be used for ". $file_extension ." files!</b>"); break;

default: $ctype="application/force-download";
}

//Begin writing headers
header("Pragma: public");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Cache-Control: public");
header("Content-Description: File Transfer");

//Use the switch-generated Content-Type
header("Content-Type: $ctype");

//Force the download
$header="Content-Disposition: attachment; filename=".$filename.";";
header($header );
header("Content-Transfer-Encoding: binary");
header("Content-Length: ".$len);
@readfile($file);
exit;
}

?>

Ik weet niet of het met dit kan
(Hierin zit gelijk beveiliging verwerkt!)
(moet dit niet naar serverside scripting, zoja wil iemand dat doen?)

Dauntless
%Europe/Berlin %470 %2005, 12:17
Verplaatst :)

Ps: Zet php tags rond je code! :)