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 :

Comment Télécharger les images dans une base de donne MySQL avec PHP


Sujet :

Langage PHP

  1. #1
    Candidat au Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Octobre 2012
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Webmaster
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Octobre 2012
    Messages : 1
    Points : 3
    Points
    3
    Par défaut Comment Télécharger les images dans une base de donne MySQL avec PHP
    Je veux télécharger des images directement dans ma base de données MySQL, plutôt que dans un dossier sur mon site voir ici.

    Step 1 – Create DataBase MySql

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    CREATE TABLE `image` ( 
     
      `id` int(11) unsigned NOT NULL auto_increment, 
      `image` blob NOT NULL,
     PRIMARY KEY (`id`) 
    )
    Step 2 – Other included php codes

    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
     
    mysql_connect('$db_host','$db_user','$db_pwd');
    mysql_select_db('$database');
     
    extract($_POST);
     
    if(isset($submit)){
     
        if(!is_dir("uploadimages")){
          mkdir("uploadimages",0777);
          }
     
        $target = "uploadimages/".$_FILES['upimg']['name'];
        if(move_uploaded_file($_FILES['upimg']['tmp_name'],$target)){
     
          mysql_query("insert into locations (image) values('{$_FILES['upimg']['name']}')") or die (mysql_error());
     
         }
        else {
          echo "error";
         }
        }
    Step 3 – Creating the Form.html

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST" enctype="multipart/form-data">
     
    Upload your image <input type="file" name="upimg" id="image">
     
    <input type="hidden" name="MAX_FILE_SIZE" value="<?php echo MAX_FILE_SIZE; ?>">
     
    <button name="submit" value="submit" type="submit">Upload ...</button> 
     
    <button type="reset">Reset </button>
     
    </form>

  2. #2
    Membre habitué
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mars 2009
    Messages
    116
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mars 2009
    Messages : 116
    Points : 163
    Points
    163
    Par défaut
    Ensuite tu fais une requete dans la base de données pour récuperer l'image en question.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT image FROM image;

  3. #3
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 692
    Points : 20 244
    Points
    20 244
    Par défaut
    Tu as un besoin spécifique pour vouloir stocker tes images dans une base plutôt que dans des dossiers ?

    En général on évite le plus possible d'alourdir la base avec des images , sauf nécessité absolu.

  4. #4
    Expert confirmé
    Avatar de Thes32
    Homme Profil pro
    Développeur PHP, .Net, T-SQL
    Inscrit en
    Décembre 2006
    Messages
    2 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur PHP, .Net, T-SQL

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 379
    Points : 4 853
    Points
    4 853
    Par défaut
    Salut,

    ta requête pour le type BLOB n'est pas la bonne.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mysql_query("insert into locations (image) values('{$_FILES['upimg']['name']}')") or die (mysql_error());
    Dans ce cas tu ne stockes que le nom de l'image dans un champ de type BLOB, ce qui n'a pas de sens.

    La bonne requête est :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $blob = file_get_contents( $_FILES['upimg']['tmp_name'] );
    mysql_query("insert into locations (image) values('$blob')") or die (mysql_error());

Discussions similaires

  1. Les images dans une base de données
    Par stilobique dans le forum Free
    Réponses: 7
    Dernier message: 13/02/2007, 18h10
  2. [MySQL] comment stocker puis recuper les images dans une base de donnée
    Par essono dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 23/11/2006, 00h07
  3. Réponses: 1
    Dernier message: 22/11/2006, 23h49
  4. Comment stocker des images dans une base de données ?
    Par [Silk] dans le forum Bases de données
    Réponses: 4
    Dernier message: 21/07/2005, 12h29
  5. les images dans une base de données
    Par houhou dans le forum Bases de données
    Réponses: 8
    Dernier message: 22/06/2004, 15h27

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