Bonjour à tous.
C'est mon premier post sur ce forum et j'espère vous expliquer au mieux mon soucis.
J'ai un formulaire d'upload de fichier qui est fonctionnel, mais en voulant l'améliorer je tombe sur un petit problème et je ne vois pas du tout d'où cela peut venir. Voici le code du formulaire :
L'utilisateur devrait choisir un dossier où sauvegarder son fichier grâce à un menu déroulant. Or à chaque fois il y a echec de l'upload. Voici le code de l'upload :
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 <div id="form"> <form enctype="multipart/form-data" action="_upload.php" method="post"> <input type="hidden" name="MAX_FILE_SIZE" value="1000000000000" /> <input id="fileBtn" type="file" name="monfichier"/><br><br><br><br> <?php: afficheSelect(new DirectoryIterator('/home/thibaud/Fichiers/'. $_SESSION['login'] .''), 'dossierSauvegarde'); ?> <input src="pictures/sauvegarder.jpeg" type="image" value="submit"/> </form> </div> <a id="btnRetourUpload" href="accueil.php"><img src="pictures/fleche-gauche.png"></a> <?php function afficheSelect($it, $name) { echo "<select name=\"$name\">\n"; for (; $it->valid(); $it->next()) { if ($it->isDir() && !$it->isDot()) printf("\t<option value=\"%s\">%s</option>\n", $it->getFilename(), $it->getFilename()); } echo "</select>\n"; } ?>
Pourtant en faisant un var_dump de la variable $dossier, le chemin est exact. J'espère avoir été clair et j'attend votre aide.
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 $date = date("d-m-Y"); $heure = date("H:i"); $dossier = '/home/thibaud/Fichiers/' . $_SESSION['login'] . '/' . $_POST['dossierSauvegarde'] . '/'; $fichier = basename($_FILES['monfichier']['name']); $taille_maxi = 1000000000000; $taille = filesize($_FILES['monfichier']['tmp_name']); if ($taille > $taille_maxi) { $erreur = 'Le fichier est trop gros...'; } if (!isset($erreur)) { $fichier = strtr($fichier, 'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ', 'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy'); $fichier = preg_replace('/([^.a-z0-9]+)/i', '-', $fichier); if (move_uploaded_file($_FILES['monfichier']['tmp_name'], $dossier . $fichier)) { echo 'Upload effectué avec succès !'; $base = mysql_connect('localhost', 'root', 'mon_mot_de_passe'); mysql_select_db('tgirard.fr.nf', $base); $sql2 = 'SELECT id FROM user WHERE login="' . $_SESSION['login'] . '"'; $req2 = mysql_query($sql2) or die('Erreur SQL !<br />' . $sql2 . '<br />' . mysql_error()); $data = mysql_fetch_array($req2); $id = $data['id']; $sql = 'INSERT INTO historical_data (user_id, nom_fichier, date, heure) VALUES(' . $id . ', "' . $_FILES['monfichier']['name'] . '", "' . $date . '", "' . $heure . '")'; $req = mysql_query($sql) or die('Erreur SQL !<br />' . $sql . '<br />' . mysql_error()); mysql_free_result($req); mysql_close(); } else { echo 'Echec de l\'upload !<br>'; } } else { echo $erreur; } ?>
Partager