Mijn actionscript is een beetje aangepast. Ik probeer een de naam variabele mee te sturen vanuit het tekstvak name_txt. Ik steek die in de variabele nieuweNaam die ik naar het php bestand stuur. Vanuit het php bestand probeer ik een true terug te sturen naar de flash als het gelukt is, maar dat weet ik niet zeker hoe dat moet. Php is ook aangepast.
Zoals het hier nu staat werkt het niet, zelfs het uploaden niet meer...
Code:
import flash.net.FileReference;
info.html = true;//textveld html enabelen
scaleMode = noScale;
var bestandTypes:Array = new Array();
var imageTypes:Object = new Object();
imageTypes.description = "Images (*.jpg)";
imageTypes.extension = "*.jpg;";
bestandTypes.push(imageTypes);
//class aanspreken
var fileRef:FileReference = new FileReference();
//de blader knop
selecteerBestand.onRelease = function() {
fileRef.browse(bestandTypes);
};
//upload knop en upload progres balk onzichtbaar maken
uploadKnop._visible = false;
progresBalk.balk._visible = false;
progresBalk.balk._xscale = 0;
/////////////////////twijfel////////////////////
var send_varnaam:LoadVars = new LoadVars();
function sendNaam(){
send_varnaam.nieuweNaam = name_txt.text;
send_varnaam.sendAndLoad("upload.php", receive_varnaam, "POST");
}
var receive_varnaam:LoadVars = new LoadVars();
//wanneer er een reactie is van het php bestand:
receive_varnaam.onLoad = function() {
//wanneer hij verzonden is:
if(Resultaat == true){
test_txt.text = "Rename gelukt"
}
else{
test_txt.text = "Alles kapot"
}
}
/////////////////////twijfel////////////////////
//een listener aanmaken waarmee we allerlei gegevens kunnen opvragen
var listener:Object = new Object();
listener.onSelect = function(file:FileReference) {
//bestand is te groot
if (file.size>3145728) {
//3145728 bytes is 3 MB
info.htmlText = "Maximale bestandsgrote 3 MB";
info.setStyle("color", "0xFF0000");
} else if (file.type.toLowerCase() != ".jpg") {
info.htmlText = "Alleen .jpg bestanden toegestaan";
} else {
uploadKnop._visible = true;
info.htmlText = "Bestandsnaam: "+file.name+"<br>";
info.htmlText += "Bestandsgrootte: "+file.size+"<br>";
//info.htmlText += "Extentie: "+file.type+"<br><br>";
info.htmlText += "<b>Klik op de upload knop om de upload te starten</b>";
uploadKnop.onRelease = function() {
//het gaat fout
if (!file.upload("upload.php")) {
info.htmlText = "Upload script niet gevonden";
/*Dit komt omdat je de swf niet online bekijkt
via een php enabled server.
Of anders bestaat upload.php gewoon echt niet.
*/
}
//het gaat goed dus...
else {
/////////////////////twijfel////////////////////
sendNaam();
/////////////////////twijfel////////////////////
progresBalk.balk._visible = true;
//dadelijk laten we deze werken
}
};
}
};
//uploaden is bezig
listener.onProgress = function(file:FileReference, bytesLoaded, bytesTotal){
//procenten tonen hoeveel er al is ge upload
info.htmlText = "Bezig met uploaden...";
prc.htmlText = Math.round(bytesLoaded/bytesTotal*100);//+"% van "+file.size;
//balk in laadBalk laten groeien
progresBalk.balk._xscale = bytesLoaded/bytesTotal*100;
};
//klaar met uploaden
listener.onComplete = function(file:FileReference){
info.htmlText = file.name+" is succesvol geüpload.<br>U mag het formulier nu verzenden.";
prc.htmlText = "OK";
selecteerBestand.enabled = false;
//info.htmlText += "<a href='#pad_naar_bestand'><u>klik om te bekijken</u></a>"
progresBalk.balk._visible = false;
uploadKnop._visible = false;
}
//listener aan de ref hangen
fileRef.addListener(listener);
PHP-code:
<?php
function file_extension($filename)
{
return end(explode(".", $filename));
}
if ($_FILES['Filedata']['name'])
{
$nieuweLocatie = "uploads/";
if( isset($_POST['nieweNaam']) ){
$extension = file_extension($_FILES['Filedata']['name']); // Get extension
$sendNieuwenaam = "".$_POST['nieweNaam']."".$extension;
$nieuweLocatie .= $sendNieuwenaam;
move_uploaded_file($_FILES['Filedata']['tmp_name'], $nieuweLocatie);
chmod ('uploads/'.$_FILES['Filedata']['name'] , 0644);
$Resultaat = true; // upload gelukt?
echo '&Resultaat='.$Resultaat.'&'; // het antwoord op de vorige vraag terug naar flash sturen
}
?>
Favorieten/bladwijzers