Upload de fichier php

paulito47 Messages postés 8 Date d'inscription jeudi 3 septembre 2009 Statut Membre Dernière intervention 28 juillet 2011 - 2 sept. 2009 à 22:52
nautilus99 Messages postés 661 Date d'inscription vendredi 26 septembre 2008 Statut Membre Dernière intervention 18 septembre 2009 - 3 sept. 2009 à 20:33
Je réalise un script php qui génère un formulaire qui permet la collecte des informations nécessaires pour l'ajout d'une photo (titre, description) et le traitement de ce formulaire. Ce formulaire est accessible uniquement aux membres authentifiés.

après saisie des informations nécessaires à l'ajout de photos :
-Création d'un dossier (s'il n'existe pas) qui porte le nom du login de l'utilisateur et dépôt de la photo ;
-Ajout des informations concernant la photo dans la base de données

J'ai un problème que je n'arrive pas à résoudre. l'image s'insère bien dans le bon dossier. Mais j'aimerai qu'elle s'incrémente afin que lorsque j'ajoute une nouvelle image dans le dossier elle n'écrase pas celle ajouté auparavant.

Voici mon code:


formulaire:
formulaire photo

Ajout

<form name="ajout_photo" method="post" action="pages/add_photo.php" enctype="multipart/form-data">
Titre de Votre photo :,
(50 caractères),

----

Description de Votre photo :,
(80 caractères),

----

Chargez votre logo :,
,
login"; ?>" />

id_user"; ?>" />

Date : <?php echo date('Y-m-d'); ?>" />

</td>
</tr>
<tr>
<td colspan="2" style="text-align:center">

</td>
</tr>
</table>
</form>




Page d'ajout:

$requete_reccup = "SELECT * FROM photo";
$result_reccup = @mysql_query($requete_reccup);
$enr_reccup = @mysql_fetch_object($result_reccup);

// Protection des données
$titre = addslashes($_POST['titre']);
$description = addslashes($_POST['description']);
$id_user = addslashes($_POST['id_user']);
$login = addslashes($_POST['login']);
$date=$_POST["date"];



if ($_FILES['photo_gd']['type'] != 'image/png' && $_FILES['photo_gd']['type'] != 'image/jpeg' && $_FILES['photo_gd']['type'] != 'image/jpg' && $_FILES['photo_gd']['type'] != 'image/gif')
{
echo"Le fichier doit être au format *.jpeg, *.gif ou *.png .";
}

else{

// Insertion dans la BDD
$requete_ph = "INSERT INTO photo VALUES('', '$titre', '$description', '$date', '', '$id_user')";
$result_ph = mysql_query($requete_ph);
@mysql_close();

// Enregistrement de l'image
if(!empty($_FILES['photo_gd']['name']))
{
$original = basename($_FILES["photo_gd"]["name"]);
$temporaire = $_FILES["photo_gd"]["tmp_name"];



//Créer un identifiant difficile à deviner
$nom = $login;

$upload = '../img/' . $login . '/';
if(!is_dir($upload)){mkdir($upload);}


$resultat = move_uploaded_file($_FILES['photo_gd']['tmp_name'],$upload.'/'.$nom.'.jpg');
if ($resultat) echo "Transfert réussi";
/*$final = "../img/test.jpg";
//$final = "../../images/logo_pro/test.jpg";
move_uploaded_file($temporaire,$final);*/
}



header('Location: ../index.php');
}

1 réponse

nautilus99 Messages postés 661 Date d'inscription vendredi 26 septembre 2008 Statut Membre Dernière intervention 18 septembre 2009 1
3 sept. 2009 à 20:33
Bonsoir,

Et si avant de créer le nom tu lisais celui de la dernière image, exemple img00011.jpg, recherher la chaine numérique, incrémenter comme nouveau nom d'image...
0
Rejoignez-nous