[PHP] move_upload_file() toujours FALSE

Fermé
Alex95sang - 2 juin 2009 à 15:09
 Alex95sang - 2 juin 2009 à 15:58
Bonjour,

J'ai un problème pour envoyer un fichier sur un serveur apache.

Donc j'ai utilisé un formulaire pour récupérer mon fichier, puis je veut l'envoyer sur mon serveur via la commande "move_upload_file()" si je ne me trompe pas.

Mais cette fonction me retourne toujours FALSE, sauriez-vous quel en est la cause ?

Voici mon code.

<?php
 
 if(isset($_POST['Envoyerdat']))
 { 
    $content_dir = "/home/h059730/nastran_test/";
    
    foreach($_FILES as $fichier) 
    { 
        $input_name = $_FILES['dat']['name'];
        $tmp_file = $_FILES['dat']['tmp_name'];
        
        if( !is_uploaded_file($tmp_file)) 
        {
            echo"File not found"; 
        }
        else 
        { 
            $name_file = $input_name;
            $final_upload = $content_dir . $name_file;
            
            echo "<br>TMP : $tmp_file<br>DIR : $content_dir<br>NAME : $name_file<br>FIN : $final_upload<br><br>";
            
            if( move_uploaded_file($tmp_file, $content_dir . $name_file) ) 
            { 
                echo"Fichier $name_file uploadé avec succes<br />"; 
            }
            else
            {
                echo "File upload failed"; 
            }
        } 
    }
 } 
 else
 {					
    echo "<TABLE BORDER=\"0\">
    <form ENCTYPE=\"multipart/form-data\" method='POST' action='$_PHP_SELF' name=\"formdat\">
    <TR>
        <TH><b><u>Fichier</b></u> <input type='file' name=\"dat\" value=\"\"></TH>
        <TH><input type='submit' name=\"Envoyerdat\" value=\"Envoyer\"></form></TH>
    </TR>
    </TABLE>";
 }
 
 ?>



Voici ce qui est retourné sur la page.
TMP : /tmp/php2KXMyq
DIR : /home/h059730/nastran_test/
NAME : test.dat
FIN : /home/h059730/nastran_test/test.dat

File upload failed 


Merci d'avance à ceux qui ce remuront les méninges :)

Alexandre.
A voir également:

4 réponses

P@t@ch0n Messages postés 565 Date d'inscription mercredi 15 avril 2009 Statut Membre Dernière intervention 28 décembre 2009 85
2 juin 2009 à 15:30
Je te suggère de faire un print_r($_FILES), tu devrais comprendre ton erreur en visualisant comment se présente le tableau.
0
Et ça m'indique quoi de précis ?

Array ( [dat] => Array ( [name] => test.dat [type] => text/plain [tmp_name] => /tmp/phpwgPk8n [error] => 0 [size] => 10 ) ) 
0
P@t@ch0n Messages postés 565 Date d'inscription mercredi 15 avril 2009 Statut Membre Dernière intervention 28 décembre 2009 85
2 juin 2009 à 15:41
Je pensais en fait que tu faisais de l'upload multiple, car tu utilises un foreach.

Donc, je me suis trompé, mais ton foreach ne sert strictement à rien.

Sinon, est-ce que les droits sont ok dans le répertoire de destination ?

Ton error_reporting est bien à E_ALL ?
0
Oups, le foreach, j'ai copié la mauvaise partie, parce que j'ai 2 zones d'upload, seul le foreach est rajouté pour le moment :P

Le Repertoire à les droits en 777 ;)

Qu'est-ce que le Error_reporting pourrais modifier ? Je le change quand même ;)
0