Bonjour,

J'ai fais une recherche sur le forum (et sur Google) pour éviter les doublons vu que les problèmes d'upload ont l'air d'être légion mais je n'ai pas trouvé d'info qui puisse m'aider.

Voici mon problème :
Lorsque je lance l'upload de mon fichier, le is_uploaded_file échoue. Apparemment, le fichier ne s'inscrit donc même pas dans le répertoire temporaire.

Voici mon formulaire :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
<form method="post" ENCTYPE="multipart/form-data" action="./includes/action_photo_blogposts.php">
	<input type="hidden" name="max_file_size"  value="2048">
	<input type="file" name="fichier">
	<input value="Ajouter" type="submit" name="upload">
</form>
Mon script :
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
 
<?php
 
if( isset($_POST['upload']) ) // si formulaire soumis
{
    $content_dir = '../../images/blog/'; // dossier où sera déplacé le fichier
 
    $tmp_file = $_FILES['fichier']['tmp_name'];
 
    if( !is_uploaded_file($tmp_file) )
    {
        exit("Le fichier est introuvable");
    }
 
    // on vérifie maintenant l'extension
    $type_file = $_FILES['fichier']['type'];
 
    if( !strstr($type_file, 'jpg') && !strstr($type_file, 'jpeg') && !strstr($type_file, 'bmp') && !strstr($type_file, 'gif') )
    {
        exit("Le fichier n'est pas une image");
    }
 
    // on copie le fichier dans le dossier de destination
    $name_file = $_FILES['fichier']['name'];
 
    if( !move_uploaded_file($tmp_file, $content_dir . $name_file) )
    {
        exit("Impossible de copier le fichier dans $content_dir");
    }
 
    echo "Le fichier a bien été uploadé";
}
?>
Les lignes importantes du php_info :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
file_uploads	On
upload_max_filesize	2M
upload_tmp_dir	/Applications/xampp/xamppfiles/htdocs/temp
J'utilise Xampp pour Mac OS X et mon dossier temp est en 777.

Les localisations des divers fichiers :
php.ini : /Applications/xampp/etc/php.ini
formulaire : /Applications/xampp/xamppfiles/htdocs/debussy/bakovitz/includes/photos_blogposts.php
script : /Applications/xampp/xamppfiles/htdocs/debussy/bakovitz/includes/action_photo_blogposts.php
dossier temporaire : /Applications/xampp/xamppfiles/htdocs/temp

le fichier php.ini tel que présenté plus haut a été modifié pour pointer vers mon dossier temp, à la base aucun dossier n'était spécifié donc j'imagine qu'il pointait vers ce dossier :
/Applications/xampp/xamppfiles/temp

Mais ça ne marchait pas non plus

A mon avis c'est un problème de chemin relatif/absolu mais ça dépasse un peu mes faibles capacités d'administrateur !

Merci d'avance pour votre aide