Bonsoir à tous,
Je suis actuellement sur la création d'un site internet communautaire.
En faites ce qui nous intéresse ici, c'est qu'il y a une partie "échange" où les utilisateurs pourront s'échanger des fichiers musicaux en les postant.
Je m'explique :
Mon but étant de créer un formulaire avec les champs suivants (artiste, titre, catégorie) muni d'un fichier swf pour l'upload.
voici la source de mon swf :
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
52
53
54
55
56
57
58
59
60
61
62
63
64 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; // Utilisation en mode manuel // pour lui dire quoi afficher my_pb.mode = "manual"; // Some makup for the progress bar my_pb.conversion = 1024; my_pb.labelPlacement = "top"; my_pb.label = "%3%% Uploadé (%1Ko/%2Ko)"; // The progress bar will be visible when we neet it my_pb._visible = false; // type de fichiers acceptables // j'ai modifié la source pour accepter toutes les extensions // il est plus prudent de vérifier le type du fichier en php... browse_butn.clickHandler = function(){ file_fr.browse([{description: "tous", extension: "*"}]); } // Afficher le nom du fichier // Appel de la page d'upload php list_obj.onSelect = function(){ name_txt.text = file_fr.name; file_fr.upload("upload.php"); } // Action pendant l'upload // Affichage de la barre de progression 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); } // Action quand l'envoi est terminé list_obj.onComplete = function(){ name_txt.text = "Votre fichier a été envoyé"; my_pb._visible = false; } // Autres fonctions 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 maintenant la source de mon fichier upload.php (requit par le fichier swf)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 <?php if (isset($_FILES['Filedata']['name'])) { $uploadDir = "uploads/"; $uploadFile = $uploadDir . basename($_FILES['Filedata']['name']); move_uploaded_file($_FILES['Filedata']['tmp_name'], $uploadFile); } ?>
Voilà.
Ce que je cherche à faire c'est récupérer l'adresse de mon fichier uploadé,
afin de l'enregistrer dans une bdd, pour pouvoir l'afficher dans un tableau type (artiste-titre-TELECHARGER)
et évidement quand on clique sur télécharger, le fichier se télécharge =)
J'ai déjà effectué quelques recherches sur le net, et j'ai trouver quelqu'un qui cherchait à faire la même chose, malheureusement il est rester sans réponse...
Voici l'idée qu'il avait eu, peut être que cela pourra vous éclairez afin de mieux me répondre =)
tonin10:
je pense avoir trouvé une soluce pour mon probleme j'ai modifier la methode d'upload et du coup je devrais plus avoir de pb , normalement faut que je test ...
voila ma methode
etape 1
création d'un ID lié au fichier qui sera uploader
etape 2
formulaire qui update la bdd avec l' ID et les champs du formulaire
etape 2
upload du fichier par contre j'ai ajouter une variable dans ma balise object de la page
CODE
<param name="movie" value="fileUpload.swf" /><param name="quality" value="high" /><param name="bgcolor" value="#ffffff" /><embed src="fileUpload.swf?id_fichier=VariableId" quality="high" bgcolor="#ffffff" width="500" height="50" name="fileUpload" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
du coup quand mon fichier est uploader je peux updater la ligne de ma bdd ou y'a l' ID correspondant au fichier en cour
Voilà ce à quoi il avait penser. Malheuresement je ne sais pas si ça marche et je ne sais pas le faire car je suis encore novice en programmation php...
Si quelqu'un pouvait m'aider, je lui en serait vraiment très reconnaissant..
En espérant être tomber sur le bon forum.. Bonne soirée à tous !
Partager