[MySQL-PHP] Stocker une image dans une base

Stocker une image dans une base [MySQL-PHP] - Programmation

Marsh Posté le 30-08-2001 à 14:08:20    

Salut à tous,
 
Vous savez si c'est possible de laisser la possibilité à un utilisateur d'uploader une image depuis son disque dur vers une base de données MySQL à partir d'une page PHP?
Si oui, vous pourriez me mettre sur la voie svp?
 
merci,
vx


---------------
The best way to accelerate a computer running windows is at 9.8m.s-2
Reply

Marsh Posté le 30-08-2001 à 14:08:20   

Reply

Marsh Posté le 30-08-2001 à 14:17:43    

C'est le lien vers l'image que je mettrais en base, les images tu les uploades dans un répertoire défini...
 
Mais oui, un utilisateur web peut uploader (dans une limite de taille fixée par ton hébergeur) des images sur ton serveur.
 
Avec un formulaire de ce type :
 
<form method="post" ENCTYPE="multipart/form-data" action="valid_upload.php3" name="upload">
<INPUT TYPE="hidden" name="MAX_FILE_SIZE" value="100000">
  <INPUT NAME="userfile" TYPE="file" class="icinput">
</form>
 
Sur valid_upload.php3 tu reçois : $userfile
 
Test de la taille de l'image (ici 25 Ko Max)
 
if($userfile_size>25000)
{
   faire quelque chose
}
else
{
       //Test du format de l'image jpg ou gif
 
 if( strstr($userfile_type,"image/pjpeg" ) || strstr ($userfile_type,"image/gif" ) )
 {
       if($userfile_type=="image/pjpeg" )
              {$file_name="nomdeimagesouhaité.jpg";}
              else
              {$file_name="nomdeimagesouhaité.gif";}
              //copie de l'image dans un répertoire donné (ici _picts..)
      copy($userfile,"../_picts/$file_name" );
     
     }
 
     
}
 
Et après tu stockes le liens dans la base...

 

[edtdd]--Message édité par fly lm--[/edtdd]

Reply

Marsh Posté le 30-08-2001 à 14:26:24    

Ce qui me géne avec ça, c'est que l'image est accessible à n'importe qui avant que le webmaster ne la valide. Ou alors il faudrait la crypter le temps de vérifier si elle est publiable.
 
vw


---------------
The best way to accelerate a computer running windows is at 9.8m.s-2
Reply

Marsh Posté le 30-08-2001 à 14:29:52    

Bha je ne sais pas ce que tu veux faire, mais tu peux la stocker dans un répertoire protégé (htacces par ex) et peut-être avec une procédure de validation, déplacer l'image du répertoire protégé vers le répertoire publique..??

Reply

Marsh Posté le 30-08-2001 à 22:42:38    

attention, sur multimania l'upload n'est pas possible en ligne
(nivo des droits d'accès)

Reply

Marsh Posté le 11-10-2002 à 17:10:33    

bon un petit up parceque je me pose la question vu que je commence a être short niveau espace sur mes sites et que l'espace des bases est pas compté  :D  
 
donc je voudrais foutre des images DANS la base MySql ... possible ?
 
enfin a moi ca me semble hautement improbale, et j'ai jamais vu, mais bon, on sait jamais ...
 
 :hello:


Message édité par izz le 11-10-2002 à 17:11:10
Reply

Marsh Posté le 11-10-2002 à 17:16:28    

izz a écrit a écrit :

bon un petit up parceque je me pose la question vu que je commence a être short niveau espace sur mes sites et que l'espace des bases est pas compté  :D  
 
donc je voudrais foutre des images DANS la base MySql ... possible ?
 
enfin a moi ca me semble hautement improbale, et j'ai jamais vu, mais bon, on sait jamais ...
 
 :hello:



Ben si on peut y stocher des fichiers alors on peut y mettre des images.
JOCE, on a besoin de ta science.
 
Par contre avec sybase, c'est possible.

Reply

Marsh Posté le 11-10-2002 à 17:41:59    

utilises le type blob (je crois) pour stocker tes images sous mysql.


Message édité par irupt le 11-10-2002 à 17:42:21
Reply

Marsh Posté le 11-10-2002 à 19:20:59    

irupt a écrit a écrit :

utilises le type blob (je crois) pour stocker tes images sous mysql.




 
ha effectivement si je peux y stocker un fichier c'est bon ...
sauf si mon hebergeur rale  :D  
 
il faut que je vois comment je peux recuperer l'image ensuite pour la mettre dans mes pages php ...
 
je vais faire des cherches (sur blob en 1er) maintenant que je sais que ca doit etre possible ...
 
merci a tous les deux  :)  :hello:  
 
d'autres remarques les gens ?

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed