Précédent   Forum des professionnels en informatique > PHP > Langage > Fichiers
Fichiers Forum d'entraide sur les fichiers avec PHP. Avant de poster -> FAQ fichiers et Sources fichiers
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 30/06/2007, 16h01   #1
Invité de passage
 
Inscription : novembre 2006
Messages : 4
Détails du profil
Informations personnelles :
Âge : 26
Localisation : France, Puy de Dôme (Auvergne)

Informations forums :
Inscription : novembre 2006
Messages : 4
Points : 4
Points : 4
Envoyer un message via MSN à chrisKey
Par défaut [Upload] Probleme de passage de valeur dans un $_FILES

Bonjour a tous,

Voilà j'ai donc une pages de formulaire assez lourde avec beaucoup de champs de fichiers. Je genere mon formulaire a partir d'un "meta fichier" qui a des lignes de ce style

BEGIN LIENS UTILES
titre du lien<lien en lui même
titreLien2<lien2...
END LIENS UTILES

Dans ma page j'ai donc des champs former de cette façon :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
 
for($i=1; $i<=$_POST['nblienu']; $i++) {
        $nom = "lienu".$i."";
        echo $_POST[$nom];
        echo $_FILES['lienulien'.$i.'']['name'];
        echo '<br>';
        if($_FILES['lienulien'.$i.'']['name'] != "" && $_POST['lienu'.$i.''] != "") {
                echo "test";
                $texte = ''.$_POST['lienu'.$i.''].'<'.$_FILES['lienulien'.$i.'']['name'].'\r\n';
                fwrite($meta, str_replace("\\","",$texte));
                //ftp_put($fp, "nom.nom", $lienulien'.$i.');
                $back = $_POST['lienubak'.$i.''];
                if($back != "") {
                        rename($path.$back, $path.$_FILES['lienulien'.$i.'']['name'].".bak");
                }
        }
        else if($_FILES['lienulien'.$i.'']['name'] == "" && $_POST['lienu'.$i.''] != "") {
                echo "test2";
                $texte = ''.$_POST['lienu'.$i.''].'<'.$_POST['lienubak'.$i.''].'';
                fwrite($meta, str_replace("\\","",$texte));
        }
}
Voilà donc ça sa marche bien. Puis quand je passe tous ça en methode "post".

Si par exemple je met if(isset($_FILES['lienulien1'])) { echo "test" ; } // Pour le test
Et bien il écrit rien... Un print_r($_FILES) ou bien encore print_r($_FILES['lienulien1']) ne donne rien non plus.

Je pense que la variable se paume en route mais je vois pas pourquoi... Quelqu'un aurait-il une idée ?

Merci d'avance a vous tous...

PS : J'ai verifié le fichier php.ini et tout est ok dedans.
chrisKey est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 30/06/2007, 17h20   #2
En attente de confirmation mail
 
Inscription : juin 2002
Messages : 6 164
Détails du profil
Informations forums :
Inscription : juin 2002
Messages : 6 164
Points : 6 404
Points : 6 404
Vous n'auriez pas oublié cette partie dans votre balise <form> pour ne rien avoir dans $_FILES :
Code :
enctype="multipart/form-data"

A moins d'avoir une très vieille version de PHP

Vérifiez votre démarche en vous basant sur le tutoriel : Upload de fichiers en PHP.

Pourquoi ne pas avoir utilisé un tableau pour ces champs de type file ? N'oubliez pas que vous êtes limités à l'upload (2Mo par défaut au total pour les fichiers).
julp est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/07/2007, 13h15   #3
Invité de passage
 
Inscription : novembre 2006
Messages : 4
Détails du profil
Informations personnelles :
Âge : 26
Localisation : France, Puy de Dôme (Auvergne)

Informations forums :
Inscription : novembre 2006
Messages : 4
Points : 4
Points : 4
Envoyer un message via MSN à chrisKey
Merci c'etait bien cela. Il me semblait l'avoir ajouté mais non il avait bien été omis.
chrisKey est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 19h53.


 
 
 
 
Partenaires

Hébergement Web