Rennomer un fichier en fonction d'un formulaire

Résolu
mymydu42 Messages postés 39 Date d'inscription mercredi 4 juin 2008 Statut Membre Dernière intervention 18 juin 2008 - 5 juin 2008 à 15:42
mymydu42 Messages postés 39 Date d'inscription mercredi 4 juin 2008 Statut Membre Dernière intervention 18 juin 2008 - 5 juin 2008 à 16:38
Bonjour,

J'aimerais un peu d'aide, je voudrai créer un script qui renomme
des fichiers uploader avec ce que l'utilisateur à rempli dans le
formulaire.

Il faut savoir que c'est pour une application ou l'utilisateur
télécharge des fichiers pour les mettre dans un dossier bibliothèque
pour s'en reservir après.

Mon formulaire à plusieurs balises :

$nom //le nom que l'utilisateur donne au fichier

$duree //la duree du fichier (duree car c'est un fichier vidéo ou pps)

$type //le type d'application qu'il faut ouvrir pour lire le fichier (power point, vlc...)

$motcle //les mots clés que l'utilisateur lui a donné

J'aimerais donc qu'une fois que l'utilisateur à rentré toutes les
données, le fichier soit copié dans un dossier nommé bibliothèque et
renommer selon les différentes variables.

Merci de votre aide précieuse.

8 réponses

winwarrior Messages postés 654 Date d'inscription jeudi 3 avril 2003 Statut Membre Dernière intervention 10 février 2009 1
5 juin 2008 à 15:54
Salut,

Pour déplacer un fichier uploadé, tu peux utiliser la fonction move_uploaded_file( string<tt class="parameter">$filename</tt>
, string<tt class="parameter">$destination</tt>
)
ça donnera quelque chose du genre:

move_uploaded_file($_FILES['nomduchampsinput']['tmp_name'], 'biblioteque/'.$nom.'-'.$duree.'-'.$type);

bien entendu, pense à verifier/formater ce que l'utilisateur a envoyé comme données, histoire que ça ne présente pas de failles de sécurité et que le fichier ait un nom correct.

win
3
winwarrior Messages postés 654 Date d'inscription jeudi 3 avril 2003 Statut Membre Dernière intervention 10 février 2009 1
5 juin 2008 à 16:12
tout dépend de comment tu as structuré ta page..

moi je dirais (sur ta page de traitement):

if ($_POST) {
 // verification des données..
 [...]
 if (!empty($_FILES['nomduchampsinput']['tmp_name'])) move_uploaded_file(...);
 [...]
}

win
3
mymydu42 Messages postés 39 Date d'inscription mercredi 4 juin 2008 Statut Membre Dernière intervention 18 juin 2008
5 juin 2008 à 15:57
merci beaucoup, j'ai mis une fonction java script pour faire attention à ce que tape l'utilisateur.
0
winwarrior Messages postés 654 Date d'inscription jeudi 3 avril 2003 Statut Membre Dernière intervention 10 février 2009 1
5 juin 2008 à 16:02
Niveau securité, le javascript ne suffit pas, si l'utilisateur a desactivé javascript ou est determiné à hacker ton systeme, il enlevera d'une maniere ou d'une autre ta verification javascript.
Pour éviter ce probleme, il faut que tu fasses la meme verification que t'as fait en javascript, mais en php.

win
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
mymydu42 Messages postés 39 Date d'inscription mercredi 4 juin 2008 Statut Membre Dernière intervention 18 juin 2008
5 juin 2008 à 16:05
ah ok je vais essayer en php alors.
j'ai une autre question : move_uploaded_file($_FILES['nomduchampsinput']['tmp_name'], 'biblioteque/'.$nom.'-'.$duree.'-'.$type); je le met a la suite du formulaire?
0
mymydu42 Messages postés 39 Date d'inscription mercredi 4 juin 2008 Statut Membre Dernière intervention 18 juin 2008
5 juin 2008 à 16:19
ok. En tout cas merci de ton aide. A partir de ce formulaire on peut aussi modifier les données d'un fichier (nom, type...) mais je sais pas trop comment m'y prendre. Si t'as une idée je suis prenante.
0
winwarrior Messages postés 654 Date d'inscription jeudi 3 avril 2003 Statut Membre Dernière intervention 10 février 2009 1
5 juin 2008 à 16:34
Moi j'aurais enregistré le fichier uploadé avec comme nom, un identifiant unique (uniqid() ?), et enregistré les informations sur ce fichier en base de donnée.

Genre les champs de base de données:
 id_fichier (identifiant unique specifié à l'enregistrement du fichier)
 type
 nom
 durée
 etc..

Et ensuite pour modifier les données concernant un fichier, t'aurais juste à modifier cet enregistrement SQL identifié par l'identifiant unique du fichier.

win
0
mymydu42 Messages postés 39 Date d'inscription mercredi 4 juin 2008 Statut Membre Dernière intervention 18 juin 2008
5 juin 2008 à 16:38
oui moi aussi j'aurais bien fait ça mais c'est pas moi qui est décidé donc je suis coincée et obligée de faire sans BDD
0
Rejoignez-nous