Prof_Matches

Inscris le 07/07/2011 à 15:52
  • Signature
    Prof_Matches - Namur
  • Site web
  • Nombre de sujets
    6
  • Nombre de messages
    13
  • Nombre de commentaires
    Aucun
  • Nombre de news
    Aucune
  • Niveau en PHP
    Débutant

Ses derniers messages sur les forums

Prof_Matches
le 08/07/2011 à 11:30
Transfert de fichier
Cela me permettrait de pouvoir afficher l'image sur une page pour demander au visiteur de confirmer l'envoi.
Prof_Matches - Namur
Prof_Matches
le 08/07/2011 à 07:41
Transfert de fichier
Ha ! Bien, merci beaucoup.
J'aurais deux petites questions.
- peut-on attribuer à une variable le nom du fichier enregistré
- puis-je utiliser cette nouvelle variable pour afficher l'image avec la fonction readfile($image); ?
Prof_Matches - Namur
Prof_Matches
le 07/07/2011 à 16:00
Transfert de fichier
Bonjour,

Sur mon formulaire, l'utilisateur peut choisir un fichier à m'envoyer. L'enregistrement du fichier dans le répertoire choisit fonctionne très bien. Le soucis c'est que quand un fichier portant un nom identique existe déjà dans le répertoire, il est écrasé.
J'aimerais donc enregistrer le fichier avec son nom d'origine suivi de quelque chose d'aléatoire : soit un nombre aléatoire donné par la fonction ($nom_aleatoire = md5(uniqid(rand(), true));) ou par un ID de session : et c'est là que je sèche.
Il est nécessaire également de pouvoir retrouver le nom du fichier pour pouvoir l'afficher dans une page que l'utilisateur devra valider pour envoi.

En termes plus cours : je souhaite enregistrer un fichier avec un nom unique comprenant au minimum le nom et l'extension d'origine.

Voici le code que j'ai et qui fonctionne (mais avec le nom original du fichier) :

<?php

if (isset($_FILES['monfichier']) AND $_FILES['monfichier']['error'] == 0)
{

if ($_FILES['monfichier']['size'] <= 1000000)
{

$infosfichier = pathinfo($_FILES['monfichier']['name']);
$extension_upload = $infosfichier['extension'];
$extensions_autorisees = array('jpg', 'jpeg', 'gif', 'png');
$nom_aleatoire = md5(uniqid(rand(), true));
if (in_array($extension_upload, $extensions_autorisees))
{

move_uploaded_file($_FILES['monfichier']['tmp_name'], 'uploads/' . basename($_FILES['monfichier']['name']));
echo "L'envoi a bien été effectué !";

}
}
}
?>
Prof_Matches - Namur
LoadingChargement en cours