IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[Upload] Perdu dans la gestion des images [Fait]


Sujet :

Langage PHP

  1. #1
    Candidat au Club
    Inscrit en
    Septembre 2007
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 8
    Points : 3
    Points
    3
    Par défaut [Upload] Perdu dans la gestion des images
    bonjour à tous

    j'aimerai créer un script qui gére et affiche des informations sur les évenements de mon association

    sur la page vu par les visiteurs il y aurai
    - date
    - nom de l'évenement
    - petit blabla 10 aines de lignes
    - 1 à 8 images (en miniatures puis cliquer pour plus grand)

    toute la partie jusqu'à l'insertion d'images je sais faire mais apres je suis perdu entre le stockage en "blob" ou par liens et surtout comment le codé pour l'administration, la création de miniatures, relier les images aux bons évenements etc...

    il faudrai que celui qui met à jour via l'administration du site puisse ajouter 1 à 8 images, qu'elles soit transformer en miniatures etc...

    j'ai lu pas mal de chose mais j'avoue que je m'en sors pas sur ce coup la.

    si quelqu'un peut m'aider ca serai gentil

    merci
    ++

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    957
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 957
    Points : 1 177
    Points
    1 177
    Par défaut
    Je te conseille :

    - de stocker 2 images, une miniature, une taille réèl dans un dossier /bankimage

    - sauve en base le nom des images et le nom de sauvegarde sur disque que tu renommes en IDimage1.jpg, IDimage2...(remplace ID par ton ID)
    Ex : concert_a_la_baule.jpg - 14image1.jpg

    - créez les miniatures quand tu upload tes images (pas besoin de mettre leur nom en base) tu les nomes IDimage1.mini.jpg voir librairie GD pour la transformation

    - upload, tu affiches toutes les images disponibles et utilisateur decide de celle qu'il veut remplacer en cliquant dessus

    A+

  3. #3
    Candidat au Club
    Inscrit en
    Septembre 2007
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 8
    Points : 3
    Points
    3
    Par défaut
    Merci pour la réponse

    le principe sur le "papier" j'ai a peu pres compris la démarche mais disons que pour le codage de tout ca, ca me dépasse, J'ai lu des bouts des codes à droite et à gauche mais sans plus.


    je suis au tout début de ce truc, tu me dit "sauve en base" donc j'enregistre l'image direct dans la base c'est ca ?! et pour les tables j'en fait une "grosse" avec une douzaine de champs ou bien je sépares une table animation et une table images dans ce cas les jointures comment cela fonctionne ? etc...

    ++

  4. #4
    Membre éprouvé
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    957
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 957
    Points : 1 177
    Points
    1 177
    Par défaut
    Non tu n'as pas besoin de sauver les images dans la base, sauve seulement leurs noms. Les images devront etre sur ton disque pas dans la base de données.

    Pour faire tres simple tu as besoin de 2 tables :
    - Evenement (Titre, Resume, Date...)
    - Image (NomLogic, NomPhysique, Numero)

    Tu crées un dossier "/bankimage" pour sauver tes images que tu upload
    Tu dois créer un script qui créé automatiquement la miniature.

  5. #5
    Candidat au Club
    Inscrit en
    Septembre 2007
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 8
    Points : 3
    Points
    3
    Par défaut
    ok merci j'y vois déja un peu plus clair, je sais pas encore comment codé tout ca mais c'est une autre histoire, juste une ou deux précisions, à quel endroit j'inclus le script de miniatures, un truc séparé ? ou juste avant le bouton "envoyer" ?
    étant donné qu'il faudra afficher sur le site les miniatures j'imagine que je dois faire un INSERT des miniatures dans la DB aussi ?! et pour finir dans ta méthode à quoi correspond NomLogic, NomPhysique, Numero je dois également ajouter une ID dans la tables images et faire une jointure c'est ca ?

    j'ai commencer par le formulaire voilà comment je vois le truc :


    merci

  6. #6
    Membre éprouvé
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    957
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 957
    Points : 1 177
    Points
    1 177
    Par défaut
    - Tu dois créer tes miniatures juste apreès l'upload de l'image, ton script qui gère l'upload doit avoir une fonction creerMiniature().

    - Non tu n'as pas besoin d'inserer les miniatures dans ta BD, tu dois juste
    avoir un nommage claire. Ta miniature dois avoir le meme nom que ton image + le suffixe mini donc pas besoin de la stocker en base.
    image.jpg -> image.mini.jpg

    TBL_IMAGE
    ID | EVT_ID | NUM | NOM_LOGIC | NOM_PHYSIC
    ID : ta clé primaire (45)
    EVT_ID : clé évènement (Jointure) (3)
    NUM : Numéro de l'image
    NOM_LOGIC : concert_a_la_baule.jpg.
    NOM_LOGIC : 45image5.jpg

    Ta miniature s'appelera donc 45image5.mini.jpg pas besoin de la mettre en base mais tu peux le faire si tu veux.


    TBL_EVENEMENT
    ID | TITRE | RESUME...

  7. #7
    Membre éprouvé
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    957
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 957
    Points : 1 177
    Points
    1 177
    Par défaut
    Après réfexion, je te conseille vivement de séparer la gestion de tes images de tes evenements. Ca va peut-etre un peu compliqué pour toi mais au final ca sera plus simple a gérer.

    Tu dois créés 3 pages :
    1 - une page pour créer tes évènements
    1 - une page pour créer et télécharger des images
    1 - une page pour lier les images aux évènements

  8. #8
    Candidat au Club
    Inscrit en
    Septembre 2007
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 8
    Points : 3
    Points
    3
    Par défaut
    autant au début j'avais compris autant la je vois plus comment relier tout ca

    je viens de créer les tables jusque la ca va

    enregistrer la date le titre et le résumé ca va aller je sais faire
    mais l'upload et surtout comment récupéré le numéros de l'image (tu ma dit de mettre un champ NUM)
    et le nom de l'image alors ca c'est obscure pour moi

    voilà une "maquette" de ce que dois voir le visiteur si ca peu aider



    je m'excuse par avance si je suis un peu pénible mais j'ai pas encore les automatismes et la logique d'un codeur et en meme temps je fais ca pour rendre service on compte sur moi donc je veux vraiment arriver a créer ce truc d'images

    en tout cas merci pour ta patience

  9. #9
    Candidat au Club
    Inscrit en
    Septembre 2007
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 8
    Points : 3
    Points
    3
    Par défaut
    voilà comment je fais sans prendre en compte les images pour le moment

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
     
    <?
    //	INITIALISATION DES VARIABLES --
     
    	if(isset($_POST['date'])) $date=$_POST['date']; else $date="";
    	if(isset($_POST['titre'])) $titre=$_POST['titre']; else $titre="";
    	if(isset($_POST['description'])) $description=$_POST['description']; else $description="";
    	if(isset($_POST['action'])) $action=$_POST['action']; else $action="";
     
    //	CONNECTION ET SELECTION DE LA DB --
     
    	require("../inc/config_inc.php");
    	$connexion=@mysql_connect($host,$username,$password);
    	mysql_select_db($bdd_name);
     
    //	TEST SI ENVOI DEPUIS FORMULAIRE--
     
    	if($action=="ajout"){
    	$insertActu = "INSERT INTO animation (date, titre, description) VALUES ('$date','$titre','$description')";
     
    	mysql_query($insertActu, $connexion) or die('Erreur SQL ! '.$insertActu.''.mysql_error());
    	mysql_close($connexion);
    }	
     
    ?>

  10. #10
    Membre éprouvé
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    957
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 957
    Points : 1 177
    Points
    1 177
    Par défaut
    Oublie mon dernier message si c'est trop compliqué

    L'utilisateur va télécharger des images (entre 0 et 8)
    Tu vas récupérer tous les images dans ta variables $_FILES
    tu auras juste a les copiers dans ton dossier /bankimage
    c'est a ce moment la que tu les renommes, que tu créés les miniatures et
    que tu les inseres dans ta base.

Discussions similaires

  1. Gestion des images dans le ruban Access
    Par Arkham46 dans le forum Access
    Réponses: 12
    Dernier message: 08/05/2018, 17h09
  2. Gestion des images dans Jasperreport
    Par mbinte dans le forum Jasper
    Réponses: 2
    Dernier message: 31/10/2008, 15h19
  3. Réponses: 2
    Dernier message: 06/06/2007, 22h04
  4. Gestion des images dans une table en OLE
    Par Ale74 dans le forum IHM
    Réponses: 9
    Dernier message: 22/03/2007, 14h55
  5. gestion des images dans une base de données
    Par bkadje dans le forum Bases de données
    Réponses: 2
    Dernier message: 19/10/2006, 11h12

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo