Ajout photos sur site en ligne par un admin

Résolu/Fermé
necro27 Messages postés 160 Date d'inscription jeudi 28 mai 2009 Statut Membre Dernière intervention 11 février 2011 - 3 juin 2010 à 11:28
libassed Messages postés 15 Date d'inscription dimanche 5 avril 2009 Statut Membre Dernière intervention 1 juillet 2010 - 4 juin 2010 à 13:55
Bonjour à tous,

Je présente rapidement le contexte :

Je suis en stage qui a comme objet le développement d'un site internet dynamique.
Le site possède une authentification des membres.

Sur ce site je voudrais, entre autre, inclure une galerie photos. Ces photos devront être changeables sur le profil administrateur.

(Exemple fictif, on considère que les noms de variables et noms des champs dans la base de données ne contiennent pas d'erreur. C'est juste pour imager ce que je recherche.)

Pour ce que j'ai l'habitude de faire :
--> je stock dans ma base de données en local (phpmyadmin) l'adresse de la photo "photos\image1.jpg" sous le format string.

--> dans le code php j'appelle l'adresse de la photo
img src="<?php echo $_ligne['adresseimage.jpg']; ?>">


--> par l'intermédiaire de filezilla, je met en ligne sur mon hébergeur les pages de code (*.php, *.htm, ..)

--> J'importe la base de données en ligne grâce au fichier texte exporté depuis ma base de données en local.

--> Voilà j'ai donc mon site qui fonctionne correctement, les photos qui s'affichent où je veux etc...

Si je veux changer une image, du fait que l'adresse soit stockée dans la base de données, je n'ai qu'à changer le contenu de la base de données, ainsi sur l'emplacement en question sur le site la photo changera. Bien sûr je doit également mettre la nouvelle photo en ligne par l'intermédiaire de filezilla dans le dossier approprié.

Là est mon problème :

Dans le cas présent, l'administrateur est une personne qui doit pouvoir tout faire depuis le site. La réalisation d'un formulaire sur le site permettant de changer l'adresse directement sur la base de données est une solution. Mais comment faire pour mettre la photo en ligne :/

Autrement dit comment faire, en utilisant uniquement le site internet, pour faire quelque chose de similaire à une transmission de la photo.

Je suis au courant que phpmyadmin peut contenir une photo en dure en binaire, mais je suis également au courant que c'est déconseillé.

Si certaines personnes pourrait m'informer d'une démarche à suivre, cela serait cool.
Je suis complètement perdus je l'avoue, il faudrait trouver un moyen pour se connecter via le site a filezilla et insérer la photo dans le dossier adéquate.. Je pense bien que c'est impossible, je recherche donc une solution dont l'idée est similaire.

Merci de vos réponses, conseils, et n'hésitez pas à critiquer la démarche que j'effectue pour la mise en ligne, c'est en faisant des erreurs que l'on apprend.. où du moins on essai.

Merci :)

necro27
A voir également:

7 réponses

libassed Messages postés 15 Date d'inscription dimanche 5 avril 2009 Statut Membre Dernière intervention 1 juillet 2010 5
3 juin 2010 à 13:01
Bon tout dabord les scripts dont je parle vont faire partie de ton site tu va les mettres en ligne par l'intermediaire de filezilla comme t'a dit dans ton premier post
et tu les tests dabord en local ensuite si tout marche tu mets en ligne !!

tu met le chemin de la photos dans ta base de données que tu as récupéré par un formulaire par la requete SQL
INSERT INTO ( ca tu peux faire :))

maintenant tu procederas comme ta dit ici : "
--> dans le code php j'appelle l'adresse de la photo
img src="<?php echo $_ligne['adresseimage.jpg']; ?>">"

Et pour mettre les photos dans ton serveur :
tu creer une page php ou html (par exemple put_photo.php) contenant ceci
<form enctype="multipart/form-data" action="upload.php" method="post">

           <input type="file" name="foto">
           <input type="submit" value="uploader">

</form>


ensuite tu creer sa page du action (action="upload.php") donc la page upload.php contenant ceci:

<?php
// le fichier upload.php et ton repertoire photos doivent etre dans le meme repertoire sinon mais le bon chemin vers photos
if(move_uploaded_file($_FILES['fichier']['tmp_name'],"photos/".$_FILES['fichier']['name'])){
   echo " uplaod réussi ^^ ";
}
else 
   echo " echec de l'uplaod ! ";
     exit();

// tu peux faire la redirection vers une autre page avec header("location:autre_page.php");
?>

ce code la copie l'image que tu auras choisi dans le dossier photos de ton serveur(si je dis ton serveur c-a-d si c en local dans ton repertoire www ou si tu a heberger dans ton dossier photos)

apres ca tu auras qu'a appeler l'image avec son addresse que t'avais déja mis au paravant dans ta base de donnée

# Fais pas attention aux fautes d'orthographe amicalement libassed !!
1
libassed Messages postés 15 Date d'inscription dimanche 5 avril 2009 Statut Membre Dernière intervention 1 juillet 2010 5
3 juin 2010 à 12:00
Salut necro27 je te conseille dans ton cas de :
1- faire le script qui ajoute dans ta base de donnée l'addresse de l'image (je crois ke tu la déja fait)
2- fait un script qui upload directement les photos depuis l'interface d'administration de ton site vers un des repertoires de ton choix ()

NB: Le tout peut etre sur un meme formulaire
c'est a dire ->
fournir le champ nom de la photo
le titre
et la photo elle meme grace a <input type="file" name="photo">

étant pas un as de l'explication j'espere t'avoir un peu guider sur le sujet !! :)
0
necro27 Messages postés 160 Date d'inscription jeudi 28 mai 2009 Statut Membre Dernière intervention 11 février 2011 8
3 juin 2010 à 12:19
Salut libassed, merci de te pencher sur le problème.

Pour le "1-" je vois bien la marche à suivre mais pour le "2-" je bloque :/

Je précise que je suis un tantinet novice en programmation, je m'y met progressivement ^^

Donc si je comprend bien grâce à mon formulaire :

--> je peut créer un script via mon formulaire.
--> celui-ci contiendra donc les photos, ou adresses ?
--> lorsque tu parle d'un répertoire de mon choix, tu veux parler, pour mon cas, d'un répertoire se situant sur filezilla? ou cela reste un répertoire en local?

Je suis un peu perdu sur les moyens de faire notamment après être tombé sur la fameuse librairie GB.
(https://openclassrooms.com/fr/courses/918836-concevez-votre-site-web-avec-php-et-mysql/916429-creez-des-images-en-php

Donc la moindre information m'intéresse, aussi précise puisse telle être, tan pi si je passe pour un inculte^^

Pour le "nb", le ( <input type="file" name="photo"> ), c'est donc ce qui permet de mettre en script ce que tu parlai en "2-" ?

J'espère ne pas te faire peur avec les informations que je demande, je m'avoue casse-pied..

Merci en tout cas beau coup pour tes réponses, je continu de me documenter sur le net, en prenant en compte tes conseil.

Bon appétit au passage, merci.
0
Je reviens seulement de pause déjeuner, fonctionnaire oblige !! ;)

Merci pour cette réponse précieuse, je m'en occupe dès maintenant, et pour les fautes d'orthographes, personne n'est parfait, moi le premier :)

Je te tiens au courant, et m'occuperai du statut de mon message en fonction, encore merci c'est vraiment sympathique de ta part.

Au fait !! je viens d'y songer, j'en profite pour revenir sur un ancien message, puisque tu me parle du header('location:page.php'), auquel personne n'a répondu :(

Je te met le lien ci-dessous au cas où tu ne l'aurais pas vu, mais ce n'est pas une obligation surtout ! merci d'avance si tu pouvais y jeter un oeil ^^

(https://forums.commentcamarche.net/forum/affich-17928331-redirection-pages-messages-d-avertissements

Bon je retourne sur mes photos mdr

Encore merci !

Necro27
0
libassed Messages postés 15 Date d'inscription dimanche 5 avril 2009 Statut Membre Dernière intervention 1 juillet 2010 5
3 juin 2010 à 14:19
pour le truc du header je vais essayer de voir ca !

et encore de rien :)
0

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

Posez votre question
necro27 Messages postés 160 Date d'inscription jeudi 28 mai 2009 Statut Membre Dernière intervention 11 février 2011 8
3 juin 2010 à 16:01
Bon j'ai pris un peu de retard, pc en carton, tout a planté ^^. Et non c'est pas ma faute !

Bref, passons ^^

Alors j'ai bien mis en forme tout ce que tu m'as écrit.

Néanmoins quelques questions subsistes :

if(move_uploaded_file($_FILES['fichier']['tmp_name'],


--> "fichier" & "tmp_name" sont bien des nom que je doit remplacer ? où ce sont une sorte de noms réservés tels que "$_FILES" etc..

Si les remplacer je dois (^^), je mettrais donc fleur.jpg à la place de "fichier" si l'image se nomme ainsi ? Mais pour "tmp_name" ? je ne vois pas la signification :/

J'essaye de bien cerner le fonctionnement de ce code.

Pour le reste c'est bon j'ai bien compris la concaténation.

Je pense avoir d'autre questions mais je pense également, oui ça m'arrive souvent de penser, que ta réponse répondra à toutes mes questions.

Je ne te le dirai pas mais je le pense, Merci (afin d'éviter une chaîne sans fins de merci, de rien)

Oui je sais, parler pour rien dire est ma devise....

necro27
0
libassed Messages postés 15 Date d'inscription dimanche 5 avril 2009 Statut Membre Dernière intervention 1 juillet 2010 5
3 juin 2010 à 19:38
pour le
move_uploaded_file($_FILES['fichier']['tmp_name'],"photos/".$_FILES['fichier']['name'])


--> $_FILES c une variable du meme type que $_GET ou $_POST (donc les trucs entre crochet sont ses "paramétres" si on peut dire comme ca !! )
--> fichier va etre remplacer par foto pour notre cas car (
<input type="file" name="foto">
)
--> tmp_name on laisse comme ca (ca contient le chemin temporaire du fichier quand il est uploader dans le serveur ie dans le repertoire tmp)

maintenant le code ci dessous c juste pour tester si le fichier a bien été envoyer au serveur !!
if(move_uploaded_file($_FILES['fichier']['tmp_name'],"photos/".$_FILES['fichier']['name'])){
echo " uplaod réussi ^^ ";
}
else
echo " echec de l'uplaod ! ";
exit();

--> Le if (la_fonction) ca test le return de la fonction donc ici pour true va renvoyer "upload reussi ^^"
et sino ca affiche echec de l'uplaod !
0
necro27 Messages postés 160 Date d'inscription jeudi 28 mai 2009 Statut Membre Dernière intervention 11 février 2011 8
4 juin 2010 à 08:41
Bonjour libassed,

Ok, merci beaucoup pour toutes ces précisions, même si je n'en demandais pas tant ! mdr

Mais c'est agréable de voir qu'il y a des personnes comme toi qui existent encore !!

ça se fait rare.., sinon désolé de n'avoir répondu que maintenant, je ne recommence mon stage que de suite.

à une prochaine !!

Et si jamais tu as des questions sur la mise en ligne de photos, je pourrais t'aider, j'ai eu un bon prof ^^ ... mdr

Allez, bonne journée, libassed.

Necro27
0
libassed Messages postés 15 Date d'inscription dimanche 5 avril 2009 Statut Membre Dernière intervention 1 juillet 2010 5
4 juin 2010 à 13:55
de rien necro27 je te souhaite du courage et une bonne continuation
merci beaucoup pour ta proposition ^^ lol

amicalement libassed
0