begin process at 2012 05 27 20:46:12
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Base de données

 > UPLOAD IMAGE TO MYSQL

UPLOAD IMAGE TO MYSQL


 Information sur la source

Note :
9,3 / 10 - par 10 personnes
9,30 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Base de données Niveau :Initié Date de création :04/08/2004 Date de mise à jour :28/04/2005 10:51:22 Vu / téléchargé :26 416 / 5 038

Auteur : apxa

Ecrire un message privé
Site perso
Commentaire sur cette source (33)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
iop all,

Pour cette source, une connaissance des classes est necessaire.

Le zip se compose de 4 fichiers :
- image.sql (code sql pour la création de la table 'image' dans MySQL)
- image.inc.php (contenant la classe qui gere les données de la table 'image' : affichage, enregistrement, suppression)
- image.php (faisant office de visualisateur d'image, recupere des données binaires dans la base en fonction d'un id)
- index.php (interface de gestion)

Je vous présente une manière simple de gérer des images dans MySQL, cette méthode à ses avantages et inconvénients mais les déterminer n'est pas le but de la source.
Le principe d'utilisation de BLOB dans MySQL permet de stocker des données binaires donc entre autre des données images.
La plus part des sources expliquant la gestion d'images via MySQL vous ressort l'utilisation du module gd de php qui n'est pas forcement activé sur tout les serveurs et vous limite en plus au type d'image jpeg.
Le code que je vous propose vous permet de jouer sur les différents types mimes de type image web et de sauvegarder le contenu binaire sans passage par les fonctions graphiques et ainsi offrant une plus grande maniabilité et accessibilité au code.

Beaucoup d'évolution pourront être faite au tour de ce code, vous avez ici la base.

Have Fun ;)


 Conclusion

http://www.apxa.com

 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Historique

28 avril 2005 10:51:22 :
rétablissement du ; a la fin de la ligne 8 : define(INT_NBIMAGE_BY_ROW, 5)

 Sources du même auteur

Source avec Zip IDENTIFICATION (CLASS+SESSION+MYSQL)
Source avec Zip CRÉATION D'UNE 2ÈME LISTE EN FONCTION DE LA SÉLECTION D'UNE ...
Source avec Zip OUTILS DE CONVERSION DE LA DATE....

 Sources de la même categorie

Source avec Zip ORM : DAO, ACTIVERECORD ET DBLIST par Reldan
Source avec une capture CET EXTRAIT PERMET D'AJOUTER DANS UN TABLEAU UNE AGRÉGATION ... par Denis007
EXPORT DE BASE AU FORMAT CSV par remib74
Source avec Zip RECHERCHE DES DOUBLONS DANS UNE TABLE MYSQL EN SÉLECTIONNANT... par aladec2007
[CRON] INSERT ON DUPLICATE KEY UPDATE par pierreSabatier

Commentaires et avis

Commentaire de badger71 le 04/08/2004 14:55:03

Héhé,

J'irai étudier cette source dès que possible...

Merci de l'avoir posé, je te dirai ce que j'en pense quand je m'en serai servi.

Commentaire de windu le 04/08/2004 17:43:20

l'idée est sympa, mais g tout de mêm une kestion: insérer des images dans 1 BDD ca n'est pas plus long ke les stocker dans 1 rép? en effet, ya le tps d'accès ala BDD ki joue, meme si ce n'est pas excessif... Néanmoins ta solution est certainement la seule si on désire lier des informations en vue de faire une recherche par mots-clés, auteur, date...
bon tuto!

Commentaire de apxa le 04/08/2004 18:07:10

salut windu,
Comme je disais dans la description (si tu avait bien lu),
la question n'est pas de savoir si c'est mieux de stocker en base de données ou pas, le but et de savoir qu'il existe cette solution, et c'est a chacun d'y voir son utilité.

Have Fun ;)

Commentaire de GRenard le 04/08/2004 19:22:07

Ca fait longtemps que tu n'as pas posté dit donc ;) Parce que les HTTP_POST_VARS c'est rendu vieux !
http://www.phpcs.com/code.aspx?ID=24870

À la récupération du type, pourquoi tu mets un varchar(5) ? je pensais que ceci serait plus long ?

Commentaire de apxa le 04/08/2004 20:45:35

iop grenard,
oui mais je pose le code souvent en pensant à ceux qui ont des versions php ancienne.
De tout façon ca derange pas les version récent le comprenne aussi bien.

Have Fun ;)

Commentaire de GRenard le 04/08/2004 22:20:18

Tu n'as pas répondu à :
À la récupération du type, pourquoi tu mets un varchar(5) ? je pensais que ceci serait plus long ?

Commentaire de apxa le 05/08/2004 10:25:24

iop grenard,
le type n'est juste que la deuxieme partie du type mime,
soit celle qui suit "image/..." dans le type image donc il peut y avoir jpeg, gif, bmp. J'aurais même du mettre varchar(4) je n'ai pas besoin de plus.
il est sure qu'avec des modification on pourrait aisement mettre un varchar plus long pour y placer le type mime entierement soit image/jpeg et ainsi pouvoir stocker des fichiers autres que image mais il faudrais aussi adapter le code pour l'affichage.
J'espère que cette fois ci j'ai répondu à ta question.

Have Fun ;)

Commentaire de BarbeRousse38 le 06/08/2004 17:37:02

Superbe, merci, j'avais déjà entendu parler de cette "fonction" de MySQL, mais jusque là je n'avais jamais trouvé de source (faut dire que je n'ai pas beaucoup cherché non plus par manque de temps :().

Commentaire de zoukozouko le 09/08/2004 16:07:25

je suis alle jetter un coup doueil sur ton site et lidee du menu Wds est vraiment geniale.
Ca fait un bon bout de temps aue jessaie de trouver des exemples de menus deroullant comme le tiens, mais je trouve que des tuto de merde.
Tu pourrai menvoyer les sources de ton menu? pas forcement les images, jai pas envi de faire la meme choz, maias juste les sources java, et html pour que je comprenne comment faire pour afficher des panneaux au survol de la souris, choisir les couleurs, surligner, etc...
le tiens contiens toutes les info dont jai besoin en fait.
sinon, ta source php mysql est tres bien faite, et cest un tres bon moyen de proteger les images. moi je ne stokais ke le nom de mais images dans la base, mais elles sont toujours accessibles par la bare dadresse iexplore. en revanche ta methode permet  den controler lacces, BRAVO

Commentaire de Cafeine911 le 16/08/2004 10:12:21

Bonjour,

juste une question (sans entrer dans la polémique c'est mieux ou pas), est-ce que cela prend beaucoup de place dans la base ou bien c'est pareil que de mettre l'image dans un rep.
En tout cas ta source correspond bien à ce que je veux faire.

merci de ta réponse.

Commentaire de apxa le 16/08/2004 10:57:38

Iop,
zoukozouko pour l'instant mon site n'est pas fini des k'il le sera je laisserais certaines sources a dispo.

Cafeine911 je pense que la difference est minime.
De plus c'est relatif au fait que derriere une manipe comme celle la tu peux compresser les infos.
Deja il me semble que le fichier de données mysql compresse deja les infos mysql (peut etre pas des masses mais juste de koi faire la balance) ceci dit rien ne vaut un test pour s'en assurer.

Have Fun ;)

ps: merci aux autres pour vos commentaires.

Commentaire de Oziris le 08/04/2005 16:15:23

salut,
pour moi il me sort l'erreur :
Parse error: parse error, unexpected T_STRING in c:\home\upload\index.php on line 10
domage pour une foi que je trouver une souce interressente ! sniff !

Commentaire de mha286 le 27/04/2005 13:29:56

Parse error: parse error, unexpected T_STRING in index.php on line 11

Ouais sur 2 serveurs là même erreur

Pouvez-vous m'aider

Commentaire de apxa le 27/04/2005 21:37:23

Iop Oziris, mha286
les erreurs repportées sont bien etranges.

Commentaire de Oziris le 28/04/2005 08:31:52

perso je suis un noob dans l'ecriture du code
mais je sais installer un base de donnee et modifier un fichier config pour la connexion
par contre tu utilise quelle version de phpmyadmin ?
ca peu venir de là peu etre
j'utilise la  version 2.5.3

ps: j'ai voulut aller sur ton site mais je n'y trouve aucune aide complémentaire

voila la ligne qui semble creer l'erreur :
define(INT_MODE_DELETE, 1);
si tu a une soluce ???
merci et bonne continuation

Commentaire de apxa le 28/04/2005 10:48:44

ok c vu,
dsl g omis le ; a la fin de la ligne
define(INT_NBIMAGE_BY_ROW, 5)
je repost

Commentaire de Oziris le 28/04/2005 16:53:07

merci pour ta correction maintenant ca fonctionne !
merci pour ta super source !!

Commentaire de mika_12 le 09/06/2005 16:13:07

Bonjour tout le monde, j'ai éssayer ton script qui ajoute bien dans la base l'image mais aucune image n'est ensuite affiché ! Je n'ai pas non plus l'option de suppression qui s'affiche ! Voilà su quelqu'un pouvait m'aider ca serait sympatique mici d'avance !

Commentaire de apxa le 06/07/2005 14:40:19

Salut Mika_12
Fais tu ton teste avec l'exemple seul sans y avoir rien ajouter en terme de codes ?

Have Fun ;)

Commentaire de mika12 le 06/07/2005 18:11:33

J'ai modifié juste les para pour la connection mais je voulait juste voir comment tu le faisais tourner dans le code donc j'ai rien modif du code original !

Commentaire de apxa le 06/07/2005 19:24:18

iop Mika
Etant donné que le code fonctionne chez d'autre personne je ne peux que dire que l'on est face à un problème de paramétrages soit Apache (ou IIS), soit php.ini ou soit type mime.

Have Fun ;)

Commentaire de mika12 le 06/07/2005 19:29:28

Ouais je vais le tester en ligne sur un serveur et je te dit si y a tjrs un prob ! Mais bon je voulais juste voir comment tu l'avais codé :p ! Merci je te dirais si tout tourne bonne continuation TchOoooooooo

Commentaire de potibulle le 01/02/2006 12:03:03

Bonjour,

Je suis plutot débutant en PHP. J'ai voulu testé votre code et j'obtiens les erreur suivantes, pouvez vous m'aider ?

Notice: Undefined index: OS in c:\program files\easyphp1-8\www\test2\index.php on line 14

Notice: Undefined variable: fr_mode in c:\program files\easyphp1-8\www\test2\index.php on line 19

Notice: Undefined property: var_ret in c:\program files\easyphp1-8\www\test2\image.inc.php on line 95

Notice: Undefined variable: boo_open in c:\program files\easyphp1-8\www\test2\index.php on line 79

Notice: Undefined variable: str_msg in c:\program files\easyphp1-8\www\test2\index.php on line 187

Merci d'avance

Commentaire de cybertrand17 le 06/02/2006 12:20:58

Bonjour,
C'est exellent!!!!
Mon hébergeur va être heureux... Vu qu'il ne comptabise pas la taille de mes bases de données LOL
A+

Commentaire de duprijr le 01/03/2006 17:08:09

J'ai exactement les même problèmes que Potibulle. J vois que les autres n'ont rien a modifier dans la source.

Que faut-il faire avec ces erreurs?

A+

Commentaire de apxa le 01/03/2006 22:53:46

Iop,
Ca doit être un paramètres de config php.ini à modifier.
Vous tournez sous quel version de php ?
Ce script a été fait sous la version php4.

Have Fun ;)

Commentaire de chekib319 le 06/03/2006 17:36:51

salut a tous,

svp j'obtiens les erreur suivantes  si j'execute le code sur easyphp v1.8 pouvez vous m'aider ?

Notice: Undefined index: OS in c:\program files\easyphp1-8\www\test2\index.php on line 14

Notice: Undefined variable: fr_mode in c:\program files\easyphp1-8\www\test2\index.php on line 19

Notice: Undefined property: var_ret in c:\program files\easyphp1-8\www\test2\image.inc.php on line 95

Notice: Undefined variable: boo_open in c:\program files\easyphp1-8\www\test2\index.php on line 79

Notice: Undefined variable: str_msg in c:\program files\easyphp1-8\www\test2\index.php on line 187

Merci d'avance

Commentaire de duprijr le 08/03/2006 16:03:34

Comme je vois, je ne suis pas le seul avec ce probleme.

Pour ma part, j'utilise également php4.
Quel serait le paramètre erroné dans configphp.ini?

Je tiens particulièrement à faire fonctionner ces programmes, car mon hébergeur (scarlet.be) ne permet pas de creer des fichiers via php.

Merci d'avance


Commentaire de nikooool le 18/01/2007 14:55:35

Salut,

j'ai déjà mis à jour une partie de ton script.. genre la définition des variables constantes sans les guillemets.. ca le fait pas chez moi.. mais en plus.. comme  chekibe319.. j'ai les mêmes erreurs.. faut-il etre sur un serveur "non-local" pour faire fonctionner ton script ??

as-tu fais une version mis à jour ??

merci d'avance !!!
-n-

Commentaire de flatfab le 25/02/2007 22:12:56

Bonsoir,
Idem beaucoup de lignes d'erreurs : Use of undefined constant STR_DB_NAME - assumed 'STR_DB_NAME'  pour toutes les constantes.
J'ai essayé,mais épuisé mes (faibles) ressources
En attente de la solution
Merci d'avence

Commentaire de ebyss le 23/05/2007 11:33:13

Bonjour lorsque que je mets les fichiers dans mon server et que j'ouvre le fichier je me retrouve avec la page "surecrite" par;
fread($int_fo, filesize($fr_upload_image)); @fclose($int_fo); // Attribution de ...
enfin on ne voit rien car tout est recouvert par le code

Le code correspond à la ligne 23 de l'index.php

je pense qu'il manque une virgule ou autre mais je n arrive pas a voir ou? un soucis ds le case?

Commentaire de mohataik le 18/03/2008 22:34:58

bonjour pb avec ajout image erreur format n'est pas pris en charge quelque soit l'extension adopté pouvez vous m'aider svp

Commentaire de mohataik le 18/03/2008 22:50:56

quel est la forme de l'URL à saisir dans menu "parcourir" je pense que le message d'erreur vient de là: message erreur reçu "l'upload du fichier a échoué ou fichier vide " ou "fichier introuvable sur le serveur"
En attente de la solution
Merci d'avance

 Ajouter un commentaire




Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,359 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales