Comment récupérer un fichier uploadé

pcleder
Invité n'ayant pas de compte PHPfrance

21 oct. 2009, 09:33

Bonjour,
Mon hébergeur a déclaré /tmp comme répertoire upload_tmp_dir.
D' après mon script, le fichier image est bien envoyé mais je ne vois pas comment le récuperer.
Voici mon script :

if($_POST['upload'])
{
// configuration :

// repertoire où vont être placé les fichiers
$content_dir ='/tmp/';
// ajouter ici les autres extensions que vous autorisé
$extensions=array('jpg','jpeg','gif','png');

// est ce qu'un fichier a ete selectionné ?
if(empty($_FILES['fichier']['name'])){
exit("Aucun fichier sélectionné.");
}

// on test si le fichier est uploadé
$tmp_file = $_FILES['fichier']['tmp_name'];
if( !is_uploaded_file($tmp_file) ){
exit("Le fichier est introuvable");
}

// renommons le fichier pour plus de sécurité
$name_file = clean_file_name($_FILES['fichier']['name']);


// est ce que l'extension est valide ?
if(!in_array(getExtension($name_file),$extensions)) {
exit("Le format de votre fichier n'est pas autorisé.");
}

// upload
if(!move_uploaded_file($tmp_file,$content_dir.$name_file)){
exit("Impossible de copier le fichier !");
}else{
echo "Le fichier a bien été uploadé";
}

}
En local, le script fonctionne.
PHP 5.2.11<code><gras>Configuration: </gras>Windows XP
Firefox 3.5.3</code>

Mammouth du PHP | 686 Messages

21 oct. 2009, 10:02

Il y a un petit tuto à ce sujet sur le site :wink:
faq-tutoriels/upload-fichiers-par-http-t545.html

pcleder
Invité n'ayant pas de compte PHPfrance

21 oct. 2009, 10:25

Merci pour ta réponse.
En fait, je crois qu'il est nécessaire que je modifie mon move_uploaded_files pour transférer le fichier à la racine de mon site ou du moins dans un répertoire visible depuis mon ftp.
Je vais faire l'essai.

pcleder
Invité n'ayant pas de compte PHPfrance

21 oct. 2009, 11:20

Merci encore !!!!!
J'ai modifié mon move_uploaded_files et transféré le fichier dans un répertoire qui m'est accessible.
Ca marche !!!
Merci de m'avoir réveillé avec ce tuto !!!

Mammouth du PHP | 686 Messages

21 oct. 2009, 14:47

Merci encore !!!!!
J'ai modifié mon move_uploaded_files et transféré le fichier dans un répertoire qui m'est accessible.
Ca marche !!!
Merci de m'avoir réveillé avec ce tuto !!!
A pas de quoi :wink: