Multiupload af billeder. Den virker kun i flash, ikke på serveren
Hej eksperter.Jeg har et lidt vanskeligt definérbart problem, jeg håber I kan hjælpe med. Det drejer sig om en funktionalitet til upload af mange billeder på én gang på http://www.innova2r.net.
Jeg har valgt at købe multiupload-koden - og herefter viderebearbejde denne. Jeg bruger den professionelt udviklede kode, den tilhørende PHP-kode samt AMFPHP.
PROBLEMET? Det virker lokalt, men ikke på serveren!
Multiuploader-filen kan ses her: http://81.7.144.103/versionfinale/multiupload.swf
(Se venligst bort fra at knappen ligger helt nede i bunden - det gør den ikke, når scenestørrelsen er korrekt).
Trin 1: Brugeren har valg billeder og klikker på upload-knappen
Trin 2:
Den kan ses her - http://www.innova2r.net/test/multiupload.txt - og køres ved afvikling af .upload kommandoen. Billederne uploades helt korrekt.
De får dog andre filnavne i kraft af fortløbende numre, hentet fra SQL-databasen for at undgå at filerne overskriver hinanden + at jeg så altid har styr på, hvem af brugerne der uploadede hvilke billeder.
Trin 3: Jeg har ikke haft held med at få deres onUploadComplete-listener (der køres efter hvert enkelt billede er uploadet) til at modtage ID'en på billedet. Det er vigtigt, for når et billede er uploadet, skal det herefter vises. What to do....? Jo, jeg tilføjer istedet de enkelte id'ere til en SESSION-variabel. Når alle billeder er indlæst, bliver arrayet bare læst og returneret vha. denne kode:
var pc:PendingCall = _service.hentbilleder();
pc.responder = new RelayResponder(_root, "handleResult", "handleError");
function handleResult(re:ResultEvent) {
_root.idnavne = re.result; // F.eks. 1831,1832,1833
trace("Sessionid-array: "+idnavne); // Denne virker fint inde fra Flash
for (var i=0; i<re.result.length; i++) {
titel.push(""); // Slet titel- og søgeordsfelterne
soegeord.push("");
}
vismig_mc.loader.contentPath = "http://81.7.144.103/*******"+_root.idnavne[0]+".jpg";
}
Hvis du har NetConnection/AMFPHP debuggeren installeret i Flash, så prøv at åbne vinduet under processen og se hvad der sker...
Yderligere info:
I første frame står bl.a.
System.security.allowDomain("http://81.7.144.103");
System.security.allowDomain("http://www.innova2r.net");
(har også prøvet med "*")
I tilfælde af at det er et rettighedsproblem, har jeg også en crossdomain XML-fætter liggende i roden.
Jeg har tilføjet et simpelt debug-felt i .swf filen. Den burde vise første ID af de billeder der er blevet uploadet og fungerer fint inde fra Flash.
Jeg har prøvet i dagevis at få det til at virke. Kan du hjælpe? Og har du brug for supplerende oplysninger/kode, så sig endelig til.
