begin process at 2012 05 31 12:04:10
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Base de données

 > 

MySQL

 > 

upload d'une image dans une BDD avec blob


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

upload d'une image dans une BDD avec blob

mercredi 12 mars 2008 à 18:39:18 | upload d'une image dans une BDD avec blob

thiebaut35

Je débute en PHP et suis déjà bloqué  ! Commence pas bien c't'affaire !
Résumé:
je souhaite uploader une image via un formulaire <form enctype = "multipart/form-data"... basique vers une BDD MYSQL avec un champ img_id, cle unique ET non auto increment, car je souhaite donner le N° id à telle photo...
Mon code fonctionne si je supprime la cle unique sur img_id. Si je laisse la clé unique, j'ai cette Borde...de Mer.. de réponse: Duplicate entry '0' for key 1, le '0' peut varier, c'est la valeur que je lui donne...
Le souci c'est que si je supprime la clé unique, à chaque nouvel enregistrement à un id donné par moi, la BDD me crée 3 nouveaux enregistrements, dont 2 vides et un plein avec la nouvelle image.!!!

GRRR !

Qui peut m'aider ?

Voici le code qui me ronge !

<html> <head>
<title>Insertion des images</title>
</head>
<body>

<h3>Envoi d'une image</h3>
<form enctype = "multipart/form-data" method = "post">
<input type="hidden"name="MAX_FILE_SIZE"value="250000"/>
<input type="file"name="fic"size=50 />
<input type="submit"value="Envoyer"/>
</form>

<?php
$id = 0;   c'est moi qui fixe la valeur en fonction de la bDD,
$ret = false;
  $img_blob = '';
  $img_taille = 0;
  $img_type = '';
  $img_nom = '';
  $taille_max = 250000;
  
  
   $img_taille = $_FILES['fic']['size'];
   if($img_taille > $taille_max)
   {
    echo "Fichier trop gros...<br>\n";
    return false;
   }
   $img_type = $_FILES['fic']['type'];
   $img_nom = $_FILES['fic']['name'];
     
// je mets le contenu du fichier temporaire dans le champ img_blob
   $img_blob = file_get_contents ($_FILES ['fic']['tmp_name']);
   
// et je mets le tout dans la base de données

    include ("connexion.php");
 
$req = "INSERT INTO images (img_id,img_nom,img_taille,img_type,img_desc,img_blob)   
   VALUES ('".$id."','".$img_nom."','".$img_taille."','".$img_type."','"."','".addslashes ($img_blob)."')";
   ici  $id est la valeur que je donne arbitrairement


$ret =mysql_query ($req) or die (mysql_error ());
return true;

?>

ça c'est pour voir si ça a marché !!!!
<p><a href="liste.php">Liste</a></p>

</body>
</html>

jeudi 13 mars 2008 à 01:42:59 | Re : upload d'une image dans une BDD avec blob

yoman64

Membre Club
Salut,

Pourquoi tu n'utilises pas simplement un champs auto incrément ? je veux dire pourquoi tu tiens temps à inseré le ID que TU veux ? En tout cas t'as juste à créer un champs integer sans attributs (pas unique, pas primaire pas index) et tu vas pouvoir avoir des doublons... Si tu mets un champs unique et que tu attribut une clée qui est déja présente alors j'comprends pas que ça t'étonne d'avoir une erreur lol... Unique ça le dit, il peut pas y avoir deux fois le même id..


-------------------
Vous cherchez un hebergement Php/MySQL Gratuit et sans publicités ??
Et bien c'est la : www.e3b.org  
jeudi 13 mars 2008 à 07:36:06 | Re : upload d'une image dans une BDD avec blob

malalam

Administrateur CodeS-SourceS
Hello,

ouais...
"c'est moi qui fixe la valeur en fonction de la bDD,"
Tu fais ça comment au juste ?
Ensuite, si avec un INSERT, en ôtant ta clef, tu te retrouves avec 3 enregistrements...c'est que tu passes 3 fois sur cet INSERT dans ton code. Donc à mon sens tu devrais plutôt chercher de ce côté plutôt que du côté de ta clef. Je pense que ta soumission et ton traitement ne fonctionnent pas vraiment comme tu le crois.
jeudi 13 mars 2008 à 20:14:00 | Re : upload d'une image dans une BDD avec blob

thiebaut35

Merci à tous les 2.
Exact admin cs, le insert passait 3 fois sur le code, donc 3 enregistrements.
Je cherche encore un peu mais j'ai bien avancé, car les images, je dois pouvoir les changer qd je veux, en fixant un N° id via POST et un update à la place de insert into.

Pas la même fonction, mais j'arrive à attaquer ma base comme je le veux... Encore qq réglages ça devrait le faire !

Je reviendrai vers vous si je coince !

Merci bien

 

bretzel

dimanche 16 mars 2008 à 21:12:58 | Re : upload d'une image dans une BDD avec blob

thiebaut35

Salut les amiches !

bon ça fonctionne maintenant, je mets les images dans la base sous forme blob et àla place d'un insert into, j'ai mis un update... C'est tout comme je veux, je saisis un n° d'image dans une liste que j'ai définie, un image sur mon ordinateur et hop envoi !

ça roule tout bien, m^me les fichiers pdf passent ,tombe bien car j'en aurai besoin bientôt.

Mais, mais il y a un mais !

Quand je veux afficher une image dans une page html,  c'est le cirque et la base  affiche l'image sous forme de codes ! addslashes ne fait rien, une piste svp ?

Bien cordialement
François

dimanche 16 mars 2008 à 23:06:04 | Re : upload d'une image dans une BDD avec blob

yoman64

Membre Club
Salut,

Il te manque sans doute un header avant d'envoyer le contenu de l'image ? par exemple header('Content-type: image/png');

-------------------
Vous cherchez un hebergement Php/MySQL Gratuit et sans publicités ??
Et bien c'est la : www.e3b.org  


Cette discussion est classée dans : taille, image, id, img, blob


Répondre à ce message

Sujets en rapport avec ce message

comemn t faire une miniature image blob avec lib gd ??? [ par fredericmaill ] bonjour !! je ne sais comment creer des mgnature a la violé avec des images blob qui sont dans ma base mysql, je pensse qu'il faut utiliser la lib G Insertion image blob dans mysql [ par amewole ] Je procède à l'upload d'images que j'insère dans ma base de données qui se passe bien sauf que la colonne qui contient l'image de type blob ( img_blob insertion d'image [ par vinz78 ] salut je viens de créer diverse fichier php me permettant d'insérer mes images dans une base de données mysql tout fonctionne sauf pour le script d'ap extraire une image d'un champ blob [ par thiebaut35 ] Dans une base mysql, j'ai des jolies images que je souhaite afficher où je le veux sur des pages html.Ma base fonctionne bien je peux mettre supprimer extraire un pdf d'une bdd mysql [ par thiebaut35 ] Bonsoir à tousmon souci:j'ai une base de données qui tourne bien.Je mets un fichier pdf à un endroit précisQuand je veux l'afficher, marche pas.Quand Visioneuse d'image pb de naviquation sur le tab source de données [ par Kikuts ] Bonjour ! Dans le cadre du developpement d'un site Internet de présentation de produit, je dois insérer une visionneuse d'image coté visuel (partie no Problème d'image suite à la récupération de la base de données [ par patachon_76 ] Bonjour,J'ai un problème pour récupérer mon image correctement suite à l'appel de ma base de données en SQL serveur.En faite, je n'arrive pas afficher file upload [ par odile2ré ] Bonjour,je fais un script de file upload mais je rencontre un problème qui est le suivant : l'envoie dans la base de données se fait bien, mais pas da file upload suite [ par odile2ré ] Bonjour,je suis désespérée. je travaille sur un script de file upload depuis plusieurs jours, et j'ai une erreur et je n'arrive pas à touver d'ou ça v décomposer une image en tuiles [ par sahbi_bahroun ] Bonjour à tous, j'ai besoin de votre aide!je cherche un morceau de code en c++ qui me permet de décomposer une image jpeg de taille 512*512 en des pet


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

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,608 sec (4)

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