Comment uploader dans dossier spécifique.
Sam
-
Sam -
Sam -
Bonjour,
Je viens de créer mon premier uploader, mais voila j'ai un problème, je voudrais que mes utilisateurs puissent mettent leur fichiers dans un dossier spécifique non visible par le public qui se nommerait "private", simplement en complétant le champs "Garder mon fichiers priver".
Voici le Fichier Formulaire (index.php) ::
<form method="post" enctype="multipart/form-data" action="upload.php">
<p><input name="fichier" size="30" type="file"> <input name="upload" value="Uploader" type="submit"></p>
</form>
</div>
<font size="2">
</font></a></span></span>
<?php
$nb_fichier = 0;
echo '<ul>';
if($dossier = opendir('./ad'))
{
while(false !== ($fichier = readdir($dossier)))
{
if($fichier != '.' && $fichier != '..' && $fichier != 'index.php')
{
$nb_fichier++; // On incrémente le compteur de 1
echo '<li><a href="./mondossier/' . $fichier . '">' . $fichier . '</a></li>';
} // On ferme le if (qui permet de ne pas afficher index.php, etc.)
} // On termine la boucle
echo '</ul><br />';
echo 'Il y a <strong>' . $nb_fichier .'</strong> fichier(s) dans le dossier';
closedir($dossier);
}
else
echo 'Le dossier n\' a pas pu être ouvert';
?>
Et le fichier de gestion de l'upload par le serveur (upload.php) ::
<?php
if( isset($_POST['upload']) ) // si formulaire soumis
{
$content_dir = 'ad/'; // 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 = date('dmHi').$_FILES['fichier']['name'];
if( !move_uploaded_file($tmp_file, $content_dir . $name_file) )
{
exit("Impossible de copier le fichier dans $content_dir");
}
$message= "Le fichier http://".$_SERVER[HTTP_HOST]."/".$content_dir.$name_file." a bien été uploadé";
}
?>
<html>
<head>
</head>
<body>
<p><b>BRAVO !! <?php echo $message ?> de <?php echo ceil(filesize($content_dir.$name_file)/1000) ?> KO </b></p>
</body>
</html>
Si vous avez des propositions pour améliorez ce code, je suis preneur.
Merci d'avance à tous !
Je viens de créer mon premier uploader, mais voila j'ai un problème, je voudrais que mes utilisateurs puissent mettent leur fichiers dans un dossier spécifique non visible par le public qui se nommerait "private", simplement en complétant le champs "Garder mon fichiers priver".
Voici le Fichier Formulaire (index.php) ::
<form method="post" enctype="multipart/form-data" action="upload.php">
<p><input name="fichier" size="30" type="file"> <input name="upload" value="Uploader" type="submit"></p>
</form>
</div>
<font size="2">
</font></a></span></span>
<?php
$nb_fichier = 0;
echo '<ul>';
if($dossier = opendir('./ad'))
{
while(false !== ($fichier = readdir($dossier)))
{
if($fichier != '.' && $fichier != '..' && $fichier != 'index.php')
{
$nb_fichier++; // On incrémente le compteur de 1
echo '<li><a href="./mondossier/' . $fichier . '">' . $fichier . '</a></li>';
} // On ferme le if (qui permet de ne pas afficher index.php, etc.)
} // On termine la boucle
echo '</ul><br />';
echo 'Il y a <strong>' . $nb_fichier .'</strong> fichier(s) dans le dossier';
closedir($dossier);
}
else
echo 'Le dossier n\' a pas pu être ouvert';
?>
Et le fichier de gestion de l'upload par le serveur (upload.php) ::
<?php
if( isset($_POST['upload']) ) // si formulaire soumis
{
$content_dir = 'ad/'; // 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 = date('dmHi').$_FILES['fichier']['name'];
if( !move_uploaded_file($tmp_file, $content_dir . $name_file) )
{
exit("Impossible de copier le fichier dans $content_dir");
}
$message= "Le fichier http://".$_SERVER[HTTP_HOST]."/".$content_dir.$name_file." a bien été uploadé";
}
?>
<html>
<head>
</head>
<body>
<p><b>BRAVO !! <?php echo $message ?> de <?php echo ceil(filesize($content_dir.$name_file)/1000) ?> KO </b></p>
</body>
</html>
Si vous avez des propositions pour améliorez ce code, je suis preneur.
Merci d'avance à tous !
A voir également:
- Comment uploader dans dossier spécifique.
- Dossier appdata - Guide
- Impossible de supprimer un dossier - Guide
- Dossier rar - Guide
- Comment mettre un mot de passe sur un dossier - Guide
- Dossier démarrage windows 11 - Guide