Choisir le répertoire dans lequel on va uploader
Posté : 30 sept. 2010, 00:43
Bonjour à tous !
Je travail actuellement sur un petit programme d'upload d'image sur un serveur, mais je suis confronté à certains soucis
J'ai dans un premier temps créer dans un dossier images trois autres dossier "folder1", "folder2" et "folder3"
j'ai un petit script qui permet de les lister :
Ceci liste donc mes dossiers.
j'upload mes images à l'aide de ce script là :
le truc c'est que j'aimerais qu'à l'upload je puisse choisir le répertoire dans lequel j'upload , ici directement dans le dossier images et j'arrive pas mettre mes deux codes ensemble, à savoir je selectionne un répertoire, et quand je fais uploader sa upload dans ce répertoire
...
la seul solution que je vois c'est à l'aide de la fonction POST ... ce qui voudrais dire faire le système d'upload en plusieurs pages ...
Après j'aimerai aussi savoir créer un répertoire sur le serveur
En gros faudrai que j'arrive à quelque chose comme ca :
Je sais pas trop comment organiser tout ca ... quelqu'un pourrait il m'aider ?
Merci d'avance !
Cordialement,
Neo.
Je travail actuellement sur un petit programme d'upload d'image sur un serveur, mais je suis confronté à certains soucis
J'ai dans un premier temps créer dans un dossier images trois autres dossier "folder1", "folder2" et "folder3"
j'ai un petit script qui permet de les lister :
Code : Tout sélectionner
<form action="editeur.php" method="post">
<select name="choix">
<?php
$nb_fichier = 0;
echo '<ul>';
if($dossier = opendir('./images/'))
{
while(false !== ( $repertoires = readdir($dossier)))
if ( $repertoires != '.' && $repertoires != '..' && $repertoires != 'index.php')
{
echo '<option value="' . $repertoires . '">' . $repertoires . '</option>';
}
closedir($dossier);
}
else {
echo 'Le dossier n\' a pas pu être ouvert';
}
?>
</select>
</form>
</form>
j'upload mes images à l'aide de ce script là :
Code : Tout sélectionner
<?php
mkdir('fichier/', 0777, true);
$dossier = 'images/';
$fichier = basename($_FILES['avatar']['name']);
$taille_maxi = 100000;
$taille = filesize($_FILES['avatar']['tmp_name']);
$extensions = array('.png', '.gif', '.jpg', '.jpeg');
$extension = strrchr($_FILES['avatar']['name'], '.');
//Début des vérifications de sécurité...
if(!in_array($extension, $extensions)) //Si l'extension n'est pas dans le tableau
{
$erreur = 'Vous devez uploader un fichier de type png, gif, jpg, jpeg, txt ou doc...';
}
if($taille>$taille_maxi)
{
$erreur = 'Le fichier est trop gros...';
}
if(!isset($erreur)) //S'il n'y a pas d'erreur, on upload
{
//On formate le nom du fichier ici...
$fichier = strtr($fichier,
'ÀÁÂÃÄÅÇÈÉÊËÌÍÎÏÒÓÔÕÖÙÚÛÜÝàáâãäåçèéêëìíîïðòóôõöùúûüýÿ',
'AAAAAACEEEEIIIIOOOOOUUUUYaaaaaaceeeeiiiioooooouuuuyy');
$fichier = preg_replace('/([^.a-z0-9]+)/i', '-', $fichier);
if(move_uploaded_file($_FILES['avatar']['tmp_name'], $dossier . $fichier)) //Si la fonction renvoie TRUE, c'est que ça a fonctionné...
{
echo 'Upload effectué avec succès !';
}
else //Sinon (la fonction renvoie FALSE).
{
echo 'Echec de l\'upload !';
}
}
else
{
echo $erreur;
}
?>
la seul solution que je vois c'est à l'aide de la fonction POST ... ce qui voudrais dire faire le système d'upload en plusieurs pages ...
Après j'aimerai aussi savoir créer un répertoire sur le serveur
En gros faudrai que j'arrive à quelque chose comme ca :
Code : Tout sélectionner
Choisissez le répertoire d'upload
< là on as la liste >
Répertoire d'upload
< là une case type input que l'on peu modifier si l'on veut pour y mettre le nom d'un nouveau répertoire >
Choisissez l'image à uploader
< mon script d'upload qui prend en compte la valeur de la case input, et que si le répertoire n'existe pas alors il le créer >
Merci d'avance !
Cordialement,
Neo.