Problème upload php

Résolu
Brunodurant Messages postés 13 Statut Membre -  
Brunodurant Messages postés 13 Statut Membre -

<form action="https://etudestudy.com/Ethique2023/fichiers/dossiers/formulaireauteur.php" method="post" enctype="multipart/form-data" name="formSaisie1" target="_self" onSubmit="return soumissionOk(this)">
[…]
<input name="piece" type="file" required="required" >
[…]
<input type="submit" style="width: 300px; height: 50px; font-size:30px;" name="envoyer" id="envoyer" value="Envoyer">

$content_dir = 'articles/';
$tmp_file = $_FILES['piece']['tmp_name'];
is_uploaded_file($tmp_file );
$name_file = $_FILES['piece']['name'];
move_uploaded_file($tmp_file, $content_dir . $name_file) ;	$a="https://etudestudy.com/Ethique2023/fichiers/dossiers/articles";
$b=$name_file;
$c=$a.$b;
[…]
$spiece=$_FILES['piece']['name'];
[…]
,`piece`
[…]
'".$spiece."',

Windows / Chrome 104.0.5112.102

A voir également:

2 réponses

jordane45 Messages postés 40053 Date d'inscription   Statut Modérateur Dernière intervention   4 762
 

Bonjour,

Où se trouve ton dossier articles par rapport à ton script php ? au même niveau ?

N'hésites pas à utiliser un file_exists() pour voir si le chemin vers le dossier de destination est accessible ...

Tu peux aussi checker ses doits ( avec un is_writable() )

if(!file_exists($content_dir)){
  echo "Répertoire inconnu ou mauvais chemin";
} else{
  if (!is_writable($content_dir)) {
    echo "Le répertoire n'est pas accessible en écriture"!;
    exit;
  }
}

Regarde aussi si ta variable $_FILES ne contient pas d'erreur

if($_FILES["piece"]["error"]){
 echo "Erreur : " .  $_FILES["piece"]["error"] ;
 exit;
}

Pense aussi à faire un var_dump($_FILES);  pour voir ce qu'elle contient exactement...


0
Brunodurant Messages postés 13 Statut Membre
 

Bonjour Jordane,

Merci beaucoup pour ta réponse.

Alors étrangement, avant de poster ma question, j'avais fait pleins de tests qui n'ont pas fonctionné. Hier, je me suis dis que j'allais faire toutes tes indications suite à ta réponse. Je me suis donc connecté à mon site, à ma base et je suis allé voir mon dossier et tout les fichiers uploadés "testés" y étaient (alors qu'ils n'y étaient pas). Je n'avais rien modifié. Du coup, je présume que j'ai peut être dû oublier de faire une actualisation ou autre.

Bref, ça fonctionne. Par contre, je suis en train de mettre en place tes indications pour vérifier. Je mettrai également des vérifications pour els extensions, la taille maximale des fichiers, etc.

Merci beaucoup pour ton aide

A bientôt

Bruno

0