| |||||
| Dernière réponse | |
|---|---|
| Sujet : [php] upload d'un nombre variable de fichiers | |
| Deadog | bcp, je sais pas, m'étonnerai même, mais je me souviens avoir lu je sais pas trop où que niveau assembleur un while allez plus vite qu'un for...
youdontcare > tous pareil :p |
| Aperçu |
|---|
| Vue Rapide de la discussion |
|---|
| Deadog | bcp, je sais pas, m'étonnerai même, mais je me souviens avoir lu je sais pas trop où que niveau assembleur un while allez plus vite qu'un for...
youdontcare > tous pareil :p |
| Freekill |
|
| youdontcare |
:lol:
[edtdd]--Message édité par youdontcare--[/edtdd] |
| Deadog | pê pke on sait incontionnelement qu'un while va plus vite qu'un for :??: :D |
| Freekill | moi aussi je dois me forcer pour utiliser les for.
je sais pas pourquoi mais instinctivement je mets des while. |
| Deadog | je sais mais en ce moment je suis dans ma période while :D |
| youdontcare |
:D
|
| youdontcare |
haaa c'est trop cool ça. ça m'a inspiré pour tenter autre chose : je ne savais pas comment accéder, en javascript, à deux divs ayant le même nom (bon ok c'est pas très utile, c'est juste pour la forme).
|
| Deadog | Mais qu'est ce que je suis kon :pt1cable: j'ai complétement oublié d'incrémenté ma valeur $i :D revoila mon script corrigé (plus qql truc modifié ;)) : $destination="/home/www/upload"; $i=1; while($i<=$nbpic) { $usfl="userfile".$i; $nmusfl="userfile".$i."_name"; $szusfl="userfile".$i."_size"; if ($$usfl=="none" ) { echo "<h2><font face=arial>Vous n'avez pas sélectionné de fichier.</font></h2>"; } if ($$usfl!="none" && $$szusfl!=0) { $$usfl=stripslashes($$usfl); $final="$destination/$idart"; $final.="_$idpage"; $final.="_$i.jpg"; if (!copy($$usfl, "$final" )) { echo "<br>Probleme de transfert !<br>"; exit(); } } $i++; } echo "<a name=\"deb\"></a>\n<CENTER>\n<H3><b>Les fichiers ont correctement étais u/l</b></H3>\n</CENTER>"; j'ai essayé avec les arrays mais le script merdouillé :( alors j'ai pas cherché plus loin :D me contente de ce que j'ai fait :) merçi quand même :hello: ;) [edtdd]--Message édité par Deadog--[/edtdd] |
| Freekill | Ah oui, j'oubliais la théorie:
Lorsque l'on veut uploader plusieurs fichiers avec un seul formulaire, le principe est de travailler avec le même nom (ex. "userfile" ) pour tous les inputs file. Ensuite l'$userfile se comportera comme une array, et on l'interrogera comme telle (premier fichier = $userfile[0], 2ème fichier = $userfile[1], etc.) |
| Freekill | Dans une première page l'utilisateur est invité à choisir un nom générique de fichiers ($nom) et le nombre de fichiers du groupe ($nbr).
Ensuite ces informations sont envoyées à une deuxième page qui génère dynamiquement le formulaire nécéssaire et dont voici le code:
[edtdd]--Message édité par Freekill--[/edtdd] |
| Deadog | pkoi pas :) pke la le miens y merde :(
$destination="/home/upload"; $i=1; while($i<=$nbpic) { $usfl="userfile".$i; $nmusfl="userfile".$i."_name"; $szusfl="userfile".$i."_size"; if ($$usfl=="none" ) { echo "<h2><font face=arial>Vous n'avez pas sélectionné de fichier.</font></h2>"; } if ($$usfl!="none" && $$szusfl!=0) { $$usfl=stripslashes($$usfl); $final="$destination/$idart"; $final.="_$idpage"; $final.="_$i.jpg"; echo "final : $final"; if (!copy($$usfl, "$final" )) { echo "<br>Probleme de transfert !<br>"; exit(); }else{ echo "<a name=\"deb\"></a>\n<CENTER>\n<H3><b>Les fichiers ont correctement étais u/l</b></H3>\n</CENTER>"; } } } il u/l bien le 1er fichier (une image pour le moment, je ferais le script d'identifacation des fichiers plus tard) mais après il foire (il fait même planté tous l'ordi avec ie :pt1cable: :gun: ) :??: :??: :??: mais j'suis pas contre que tu me passe ton code :jap: :D |
| Freekill | Je viens de faire exactement la même chose...
Si tu veux mes codes... |
| Deadog | merçi :jap: vé essayer demain ;)
:jap: :jap: :jap: |
| youdontcare | utilise $$ :
for ($i=0; $i<$numFiles; $i++) { $fileName = 'userfile' . $i; $ulFileName = 'userfile' . $i . '_name'; // tu accèdes alors à la variable par $$fileName // donc un truc comme ... copy($$fileName, $$ulFileName); } |
| Deadog | voila, je voudrait faire un script qui permet d'uploader un nombre de fichiers variable.
En clair, le gars arrive sur une page, marque dans un input text un certain nombre (au hasard 7), clique sur le bouton et est redirigé vers une page avec 7 formulaire d'upload, et bien sur de pouvoir récupéré ces fichiers avec du php d'habitude pour mes upload j'utilise ce script : <INPUT NAME="userfile" TYPE="file" size="20"> <input type="hidden" name="action" value="add"> <INPUT TYPE="hidden" name="MAX_FILE_SIZE" value="10000000"> (pour la parti HTML) $destination="/home/www/upload"; if ($userfile=="none" ) { echo "<h2><font face=arial>Vous n'avez pas sélectionné de fichier.</font></h2>"; } if ($userfile!="none" && $userfile_size!=0) { $userfile=stripslashes($userfile); if (!copy($userfile, "$destination/$userfile_name" )) { echo "<br>Probleme de transfert !<br>"; exit(); } } (pour le php) mon script pour généré un certain nombre de formulaire d'upload : $i=1; while($i<=$nbpic) { ?> <INPUT NAME="userfile" TYPE="file" size="20"> <input type="hidden" name="action" value="add"> <INPUT TYPE="hidden" name="MAX_FILE_SIZE" value="10000000"><BR><BR> <?php $i++; } Le problème vient du faite de récupéré mes fichiers je pensais utiliser une boucle avec comme limite le nombre de formulaire mais dans ce cas la faut que je donne comme nom name="userfile<?php echo $i ?>" dans mon INPUT file, mais quand je vais récupéré mes fichiers dans la parti php il me faut les variables userfile1, userfile2, userfile3, userfile4, ... or je me vois mal faire $userfile$i :pt1cable: zavez pas une idée :cry: |




