Dépôt de fichier

Bonjour,
Avant de faire la migration de mon dernier site- et comme je m’y attendais, j’ai quelques pb avec mes scripts en PHP. Je teste donc la nouvelle plateforme mes scripts qui fonctionnent encore actuellement sur Ouvaton2 dans un répertoire particulier sur ouvaton3 !
J’ai réglé les autres problèmes rencontrés mais là je ne sais plus quoi faire.
Voici mon pb: Après contrôle par mot de passe, je demande à l’utilisateur de déposer un fichier gif dans un répertoire particulier. Sous ouvaton2, je permettais à l’utilisateur de sélectionner son fichier sur son disque et ensuite je le récupérais, controlais le type de fichier et le stockais. Je n’arrive pas à récupérer le fichier après envoi et d’ailleurs est-il envoyé?. Est-ce dû à la nouvelle configuration de PHP?
Merci pour les conseils

Bonjour,

Fort possible,

Utilises-tu $_FILES pour récupérer le contenu de ta variable ?

Exemple si dans ton formulaire tu as :

<input type=« file » name=« fichier » …

Dans le fichier qui reçoit l’information, tu dois utiliser ceci (pas forcément tout, bien sûr) :
$_FILES’fichier’]‹ name ›] : nom du fichier
$_FILES’fichier’]‹ type ›] : type mime du fichier
$_FILES’fichier’]‹ size ›] : taille en octets du fichier.
$_FILES’fichier’]‹ tmp_name ›] : nom temporaire du fichier.
$_FILES’fichier’]‹ error ›] : code d’erreur du téléchargement.

C’est une piste.

Christian.

Merci pour la réponse.
En fait si je n’utilisais pas $_FILES dans la version ancienne, je l’utilise maintenant $_FILES ( j’espère bien …!)

$Nom_artiste=$_POST’Nom_artiste’];
$URL=$_POST’URL’];
$fichier_type=$_FILES’fichier_name’]‘type’];
$ichier_name=$_FILES’fichier_name’]‘name’];
$temp_name=$_FILES’fichier_name’]‘tmp_name’];
$fichier_type=strrchr($fichier_name,".");
echo “

$Nom_artiste * $fichier_type * $fichier_name * $temp_name * $URL ==>ligne 33

”;

je reçois :
picasso * * * /space/uploads/phpK4pVi3 * http://art.net/~kuntz ==>ligne 33

il m’affiche donc correctement

$Nom_artiste c’est à dire: picasso

ni $fichier_type, $fichier_name

mais seulement $temp_name
$URL c’est à dire: http://art.net/~kuntz

mais n’arrive pas à identifier le nom ni le type du fichier

en local j’obtiens ça:
picasso * * * C:\Program Files\EasyPHP1-7\tmp\php328.tmp * http://art.net/~kuntz ==>ligne 33

Salut,

[quote=kuntz]Merci pour la réponse.
En fait si je n’utilisais pas $_FILES dans la version ancienne, je l’utilise maintenant $_FILES ( j’espère bien …!)

$Nom_artiste=$_POST’Nom_artiste’];
$URL=$_POST’URL’];
$fichier_type=$_FILES’fichier_name’]‘type’];
$ichier_name=$_FILES’fichier_name’]‘name’];
$temp_name=$_FILES’fichier_name’]‘tmp_name’];
$fichier_type=strrchr($fichier_name,".");
echo “

$Nom_artiste * $fichier_type * $fichier_name * $temp_name * $URL ==>ligne 33

”;

je reçois :
picasso * * * /space/uploads/phpK4pVi3 * http://art.net/~kuntz ==>ligne 33

il m’affiche donc correctement

$Nom_artiste c’est à dire: picasso

ni $fichier_type, $fichier_name

mais seulement $temp_name
$URL c’est à dire: http://art.net/~kuntz

mais n’arrive pas à identifier le nom ni le type du fichier

en local j’obtiens ça:
picasso * * * C:\Program Files\EasyPHP1-7\tmp\php328.tmp * http://art.net/~kuntz ==>ligne 33[/quote]

Oui curieux,
Je trouve, cependant, que le nom donné à ta variable est source de confusion.**

Change ce nom “fichier_name” par “fichier” tout court
et teste avec :

$type=$_FILES’fichier’]‘type’];
$nom=$_FILES’fichier’]‘name’];

etc.

A suivre…

Christian.

Il me semble que pour une variable fichier nommée “fichier”, $fichier_name retournait le nom du fichier, $fichier_type, le type, etc. D’où l’éventuelle confusion avec l’utilisation de $_FILES.

Effectivement au niveau des variables j’aurais pu mieux choisir… mais je viens de trouver le pb:

$ichier_name au lieu de $fichier_name

Je viens de corriger …ça marche mieux!

Je vais encore tester quelque temps avant de migrer

Merci