Permettre aux utilisateurs d'inséré une image [Résolu/Fermé]

Signaler
Messages postés
24
Date d'inscription
samedi 24 janvier 2015
Statut
Membre
Dernière intervention
28 mars 2015
-
Messages postés
567
Date d'inscription
mercredi 18 décembre 2013
Statut
Membre
Dernière intervention
1 juillet 2015
-
Salut tous le monde !

Je n'arrive pas a permettre aux utilisateurs de mon site d'inséré leurs propres photos. Est-ce que quelqu'un sait comment il faut procéder ? J'ai lu que mettre directement des photos dans la BDD ce n'est pas bien, alors comment faut-il faire ?

Si quelqu'un a des liens de tutos sa serais sympas car moi j'en ait pas trouvé ! :/.

1 réponse

Messages postés
567
Date d'inscription
mercredi 18 décembre 2013
Statut
Membre
Dernière intervention
1 juillet 2015
22
Bonsoir,

Vous pouvez les enregistrer directement dans un dossier du serveur, par exemple "images_membres" via un formulaire.

Voici un exemple du code qui se trouve sur la page de traitement :
//Auparavant vous devez effectuer des opérations de vérifications sur la taille,  l'extension ... du fichier envoyé

if(isset($_FILES['img']))
		{ 
	 $dossier="{$_SERVER['DOCUMENT_ROOT']}/images_membres/"; //On définie le dossier de destination ; {$_SERVER['DOCUMENT_ROOT']} permet d'obtenir la racine du serveur
	}

	 $chemin=$dossier.$titre.'.jpg'; //ici on change le titre de l'image uploadée, je vous recommande de faire un md5 du titre de l'image initial pour êter certain de ne pas avoir d'écrasement de fichier

     if(move_uploaded_file($_FILES['img']['tmp_name'], $chemin)) //Si la fonction renvoie TRUE, c'est que ça a fonctionné...
     {
          echo 'Upload effectué avec succès vers :<br/>';
		  echo $chemin.'<br/>';
     }
     else //Sinon (la fonction renvoie FALSE).
     {
          echo 'Echec de l\'upload vers :<br/>';
		  echo $chemin.'<br/>';
     }
	}
	else{
		echo 'pas de fichier à upload !<br/><br/>';
	}


Dans votre base de données, vous n'aurez à entrer que le chemin vers l'image uploadée.

Attention à ne pas oublier de modifier l'entête du formulaire par

<form method="post" action="admin.php" enctype="multipart/form-data"> 


qui permet d'autoriser l'envoie de fichier.

J'espère avoir été clair, si ce n'était pas le cas, demandez et je réexpliquerai !

Cordialement,

hharchi9.
Messages postés
24
Date d'inscription
samedi 24 janvier 2015
Statut
Membre
Dernière intervention
28 mars 2015

Merci beaucoup de votre aide ;). J'avais réussis a le faire via un tutos mais grave a vos commentaires sa m'as éclaircis un peut plus ! Merci beaucoup ;)
Messages postés
567
Date d'inscription
mercredi 18 décembre 2013
Statut
Membre
Dernière intervention
1 juillet 2015
22
De rien ! Bonne continuation à vous !