Bonjour !

Je sais que mon titre peut paraitre absurde mais je suis compltement perdu. Il s agit de creer en local sous easyphp une page d upload de photo avec progress bar en flash qui place la photo dans un nouveau repertoire du nom de la session php active.

Sous IE tout va bien, un repertoire du nom de la session est cree et la photo transferee ! (exemple: imagenes/1232jkhais1234/photo.jpg)

Sous FF et Safari la photo est transferee a la racine imagenes et aucun repertoire n est cree ! (exemple: imagenes/photo.jpg)

je n y comprends rien et je ne vois pas en quoi le navigateur pourrait influencer sur une commande de creation de repertoire au niveau du serveur... j ai bien autorise l ecriture des repertoires sous windows et j ai meme essaye d inclure une commande chmod 777 dans mon script php mais rien n y fait, seul IE repond a ma demande. J ai vide le cache une centaine de fois et redemmare le pc au cas ou les fichiers pris en comptes soient les anterieurs de test ou la commande mkdir n etait pas encore presente mais rien...

MERCI d avance pour votre aide, c est probablement une betise de debutant mais j ai beau retourner ca dans tous les sens avec tous les tuto je ne vois pas le detail qui cloche.

please help !!!!! ci dessous le code des fichiers (il s agit d un test, c est simple et non securise!):

la page contenant le flash
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
 
<?php
session_start();
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es" >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<meta http-equiv="Content-Language" content="es-co" />
<link rel="stylesheet" type="text/css" href="menu/menu_style.css" />
<title>test session</title>
</head>
<body>
<?php
$_SESSION['ref_session'] = session_id();
echo $_SESSION['ref_session'];
?>
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="300" height="200">
<param name="movie" value="FileUpload.swf">
<param name="quality" value="high">
<embed src="FileUpload.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="300" height="200"></embed></object>
</body>
</html>
le flash
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
 
import flash.net.FileReference;
 
var file_fr:FileReference = new FileReference();
var list_obj:Object = new Object();
file_fr.addListener(list_obj);
var my_pb:mx.controls.ProgressBar;
 
my_pb.mode = "manual";
my_pb.conversion = 1024;
my_pb.labelPlacement = "top";
my_pb.label = "%3%% Uploadé (%1Ko/%2Ko)";
my_pb._visible = false;
name_txt.text = "Sélectionnez un fichier";
 
browse_butn.clickHandler = function(){
	file_fr.browse([{description: "tous", extension: "*.jpg"}]);
}
 
list_obj.onSelect = function(){
	name_txt.text = file_fr.name;
	file_fr.upload("upload.php");
}
 
list_obj.onProgress = function (bytesTotal, bytesLoaded){
	my_pb._visible = true;
	my_pb.minimum = 0;
	my_pb.maximum = file_fr.size;
	my_pb.setProgress(bytesLoaded, my_pb.maximum);
}
 
list_obj.onComplete = function(){
	name_txt.text = "Le colis est livré.";
	my_pb._visible = false;
	getURL("http://www.google.com", "_parent");
}
 
list_obj.onCancel = function(){
	name_txt.text = "Annulé";
}
 
list_obj.onIOError = function(fileRef){
	name_txt.text = "IO error with " + fileRef.name;
}
 
list_obj.onSecurityError = function(fileRef, error){
	name_txt.text = "Security error with " + fileRef.name + ":" + error;
}
 
list_obj.onHTTPError = function(fileRef:FileReference, error:Number){
	name_txt.text += "HTTP error: with " + fileRef.name + ":error #" + error;}
et enfin, la ou je pense ca cloche, le php d upload
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
<?php 
session_start();
if (isset($_FILES['Filedata']['name'])) {
	 chmod ('/imagenes/', 0777);
	 mkdir('imagenes/'.$_SESSION['ref_session'], 0777);
   $uploadDir = 'imagenes/'.$_SESSION['ref_session'].'/';
   $uploadFile = $uploadDir . basename($_FILES['Filedata']['name']);
   move_uploaded_file($_FILES['Filedata']['tmp_name'], $uploadFile);
}  ?>