Come posso inviare un'altra variabile con FileReference Upload?
-
05-07-2019 - |
Domanda
Ho un problema con la classe di filereference usando la funzione upload.
Voglio inviare la variabile folderLocation
con fileReference.upload ()
.
Di seguito provo a descrivere la mia strategia.
var folderLocation : String = "photos/myUniqueFolder/";
private var serverSideScript:String = "http://localhost/project/phpFlexMechanism/upload.php";
urlRequest = new URLRequest(serverSideScript);
fileReferenceList.addEventListener(Event.SELECT, fileSelectedHandler);
private function fileSelectedHandler(event:Event):void {
// upload the file to the server side script
fileReference.addEventListener(Event.COMPLETE, uploadCompleteHandler);
fileReference.upload(urlRequest);
}
In PHP lo uso per ottenere il file e caricato
$folder = Ho un problema con la classe di filereference usando la funzione upload.
Voglio inviare la variabile folderLocation
con fileReference.upload ()
.
Di seguito provo a descrivere la mia strategia.
var folderLocation : String = "photos/myUniqueFolder/";
private var serverSideScript:String = "http://localhost/project/phpFlexMechanism/upload.php";
urlRequest = new URLRequest(serverSideScript);
fileReferenceList.addEventListener(Event.SELECT, fileSelectedHandler);
private function fileSelectedHandler(event:Event):void {
// upload the file to the server side script
fileReference.addEventListener(Event.COMPLETE, uploadCompleteHandler);
fileReference.upload(urlRequest);
}
In PHP lo uso per ottenere il file e caricato
<*>
Ma come posso inviare la cartella
tramite il " upload reference " ;?
POST['folder'];
$tempFile = Ho un problema con la classe di filereference usando la funzione upload.
Voglio inviare la variabile folderLocation
con fileReference.upload ()
.
Di seguito provo a descrivere la mia strategia.
var folderLocation : String = "photos/myUniqueFolder/";
private var serverSideScript:String = "http://localhost/project/phpFlexMechanism/upload.php";
urlRequest = new URLRequest(serverSideScript);
fileReferenceList.addEventListener(Event.SELECT, fileSelectedHandler);
private function fileSelectedHandler(event:Event):void {
// upload the file to the server side script
fileReference.addEventListener(Event.COMPLETE, uploadCompleteHandler);
fileReference.upload(urlRequest);
}
In PHP lo uso per ottenere il file e caricato
<*>
Ma come posso inviare la cartella
tramite il " upload reference " ;?
FILES['Filedata']['tmp_name'];
$fileName = Ho un problema con la classe di filereference usando la funzione upload.
Voglio inviare la variabile folderLocation
con fileReference.upload ()
.
Di seguito provo a descrivere la mia strategia.
var folderLocation : String = "photos/myUniqueFolder/";
private var serverSideScript:String = "http://localhost/project/phpFlexMechanism/upload.php";
urlRequest = new URLRequest(serverSideScript);
fileReferenceList.addEventListener(Event.SELECT, fileSelectedHandler);
private function fileSelectedHandler(event:Event):void {
// upload the file to the server side script
fileReference.addEventListener(Event.COMPLETE, uploadCompleteHandler);
fileReference.upload(urlRequest);
}
In PHP lo uso per ottenere il file e caricato
<*>
Ma come posso inviare la cartella
tramite il " upload reference " ;?
FILES['Filedata']['name'];
$fileSize = Ho un problema con la classe di filereference usando la funzione upload.
Voglio inviare la variabile folderLocation
con fileReference.upload ()
.
Di seguito provo a descrivere la mia strategia.
var folderLocation : String = "photos/myUniqueFolder/";
private var serverSideScript:String = "http://localhost/project/phpFlexMechanism/upload.php";
urlRequest = new URLRequest(serverSideScript);
fileReferenceList.addEventListener(Event.SELECT, fileSelectedHandler);
private function fileSelectedHandler(event:Event):void {
// upload the file to the server side script
fileReference.addEventListener(Event.COMPLETE, uploadCompleteHandler);
fileReference.upload(urlRequest);
}
In PHP lo uso per ottenere il file e caricato
<*>
Ma come posso inviare la cartella
tramite il " upload reference " ;?
FILES['Filedata']['size'];
move_uploaded_file($tempFile, "../user/$folder/uploadImages/" . $fileName);
Ma come posso inviare la cartella
tramite il " upload reference " ;?
Soluzione
Penso che, dal momento che FileReference
hai bisogno di un URLRequest
, sarai in grado di recuperare quelle informazioni attraverso URLRequest
di utilizzando l'oggetto flash.net.URLVariables
.
Non ho avuto il tempo di testarlo, ma hai provato:
// put this right after you instantiate urlRequest;
var urlVars:URLVariables = new URLVariables();
urlVars.targetFolder = folderLocation;
urlRequest.method = "post";
urlRequest.data = urlVar;
Questo dovrebbe permetterti di fare:
//replace your last line with these two.
$folder = Penso che, dal momento che FileReference
hai bisogno di un URLRequest
, sarai in grado di recuperare quelle informazioni attraverso URLRequest
di utilizzando l'oggetto flash.net.URLVariables
.
Non ho avuto il tempo di testarlo, ma hai provato:
// put this right after you instantiate urlRequest;
var urlVars:URLVariables = new URLVariables();
urlVars.targetFolder = folderLocation;
urlRequest.method = "post";
urlRequest.data = urlVar;
Questo dovrebbe permetterti di fare:
<*>
in PHP.
REQUEST[ "targetFolder" ];
move_uploaded_file($tempFile, "../user/$folder/uploadImages/" . $fileName);
in PHP.
Altri suggerimenti
la cosa più semplice che puoi fare è semplicemente inviarlo con un'intestazione get nella funzione di caricamento
quindi il codice appare come segue
private var serverSideScript:String = "http://localhost/project/phpFlexMechanism/upload.php?extraVar=value&extraVarB=value2";
fileReference.upload(urlRequest);
quindi nello script php usi solo
la cosa più semplice che puoi fare è semplicemente inviarlo con un'intestazione get nella funzione di caricamento
quindi il codice appare come segue
private var serverSideScript:String = "http://localhost/project/phpFlexMechanism/upload.php?extraVar=value&extraVarB=value2";
fileReference.upload(urlRequest);
quindi nello script php usi solo
<*>GET['extraValue']
la cosa più semplice che puoi fare è semplicemente inviarlo con un'intestazione get nella funzione di caricamento
quindi il codice appare come segue
private var serverSideScript:String = "http://localhost/project/phpFlexMechanism/upload.php?extraVar=value&extraVarB=value2";
fileReference.upload(urlRequest);
quindi nello script php usi solo
<*>GET['valueVarB']