Stocker une image

Fermé
solida Messages postés 97 Date d'inscription vendredi 14 novembre 2008 Statut Membre Dernière intervention 1 juin 2010 - 15 nov. 2008 à 22:12
solida Messages postés 97 Date d'inscription vendredi 14 novembre 2008 Statut Membre Dernière intervention 1 juin 2010 - 25 nov. 2008 à 01:51
slt,
Je ve que lorsque les clients ajoutent un articl puissent aussi aujouter(parcourir)une image, et je dois stocker cette image dans ma base.
je veux savoir comment faire cela ,et comment stocké cette imgage et en fin pouvoir l'afficher.
Merciii d'avance c'est tres importan pour mon projet.
A voir également:

2 réponses

pyschopathe Messages postés 1974 Date d'inscription dimanche 2 mars 2008 Statut Membre Dernière intervention 22 mars 2010 135
15 nov. 2008 à 22:38
Il faut faire un <input type="file" /> dans ton formulaire html. Les informations sur le fichier seront contenus dans la superglobale php $_FILES[]. Ces informations sont les suivantes :
$_FILES['fichier']['name']
    Contient le nom d'origine du fichier 
$_FILES['fichier']['tmp_name']
    Nom temporaire du fichier dans le dossier temporaire du système 
$_FILES['fichier']['type']
    Contient le type MIME du fichier 
$_FILES['fichier']['size']
    Contient la taille du fichier en octets 
$_FILES['fichier']['error']
    Code de l'erreur (le cas échéant)

Il faut aussi que ton formulaire précise l'encodage correct :
<form method="post" enctype="multipart/form-data" action="upload_fichier.php">
0
solida Messages postés 97 Date d'inscription vendredi 14 novembre 2008 Statut Membre Dernière intervention 1 juin 2010 16
16 nov. 2008 à 00:05
merci mais pourquoi ne pas stocker que les URL Si on stock que les urls, c'est du texte donc ca pèse pas lourd

mais je sais pas comment récupérer et afficher les images apres

et merci d'avance
0
pyschopathe Messages postés 1974 Date d'inscription dimanche 2 mars 2008 Statut Membre Dernière intervention 22 mars 2010 135 > solida Messages postés 97 Date d'inscription vendredi 14 novembre 2008 Statut Membre Dernière intervention 1 juin 2010
16 nov. 2008 à 01:24
Bien sûr tu peux ne stocker que l'URL, je te conseille même de faire comme ça. Mais le formulaire précédent te permettra de télécharger l'image sur le serveur. Ensuite tu l'enregistres dans le dossier que tu veux (par exemple /images) grâce à la fonction move_uploaded_file et tu stockes l'url dans ta base de données. Quand tu veux récupérer l'image, tu n'as qu'à chercher dans ta base de données selon le critère qui t'intéresse.
0
solida Messages postés 97 Date d'inscription vendredi 14 novembre 2008 Statut Membre Dernière intervention 1 juin 2010 16 > pyschopathe Messages postés 1974 Date d'inscription dimanche 2 mars 2008 Statut Membre Dernière intervention 22 mars 2010
16 nov. 2008 à 10:34
je suis vraiment nulle en ça ,je suis une débutante vous pouvez m'expliqué encore plus svp

et merci d'avance!!!!
0
pyschopathe Messages postés 1974 Date d'inscription dimanche 2 mars 2008 Statut Membre Dernière intervention 22 mars 2010 135 > solida Messages postés 97 Date d'inscription vendredi 14 novembre 2008 Statut Membre Dernière intervention 1 juin 2010
16 nov. 2008 à 15:23
Il faudrait que tu me dise ce que tu n'as pas compris, où tu en es de ton développement... Et tu peux me tutoyer, je ne suis pas encore assez vieux ^^.
0
solida Messages postés 97 Date d'inscription vendredi 14 novembre 2008 Statut Membre Dernière intervention 1 juin 2010 16
16 nov. 2008 à 15:36
je veux savoir comment ne stocker que l'URL d'une image et comment résuperer cette image et l'afficher a partir de son url

et merci pour tes réponses !!
0
oje suis aussi tres interessée à ce sujet et j'ai la meme question

je souhaite plus d'explication stp!!
0
pyschopathe Messages postés 1974 Date d'inscription dimanche 2 mars 2008 Statut Membre Dernière intervention 22 mars 2010 135
17 nov. 2008 à 23:19
Bon, un petit code sera plus parlant qu'une longue explication... On va imaginer que tu veux stocker les images dans une table de la forme suivante : tableUserImages( id_user, url_image ).

Ce schéma est extrêmement simplifié évidemment, tu pourrais avoir envie de stocker aussi les dimension de l'image par exemple, pour l'afficher correctement, ou le type d'image que c'est (avatar, photo de vacance, etc).

Je ne donnerai ici aucun code HTML, seulement le PHP qui nous intéresse. Le nom du champs de type file dans le formulaire est image. Pour commencer, on va voir le code du fichier qui reçoit l'image :
<?php
    // S'il y a eu un problème à l'envoi
    if ( !isset( $_FILES['image'] || $_FILES['image']['error'] != 0 ) {
        echo 'Erreur lors de l'envoi de l'image, veuillez réessayer.';
    }
    else { // Tout s'est bien passé
        // Le répertoire dans lequel on sauvegardera toutes les images, dans ce 
        // cas le répertoire 'images' qui se trouve dans le répertoire parent 
        // du répertoire courant
        $repertoire_images = '../images/';
        $nom_final = $repertoire_images.$_FILES['image']['name'];
        // On déplace l'image vers le bon répertoire
        move_uploaded_file( $_FILES['image']['tmp_name'], $nom_final );

        // On ouvre la connexion à la base de donnée, on choisit la base...

        // On insère l'image dans la table avec la requête suivante :
        // INSERT INTO tableUserImages VALUES( $id_user, $nom_final );
        // où $id_user est l'identifiant de l'utilisateur qui a uploadé l'image
        
        // On vérifie les erreurs
    }
?>

Ensuite le formulaire d'affichage des images :
<?php
    // On récupère le résultat de la sélection dans la variable $tableau_images
    // SELECT url_image FROM tableUserImages WHERE id_user=$id_user;

    // On affiche une liste des images
    echo '<h1>Liste des images de l'utilisateur '.$id_user.' :</h1>';
    echo '<ul>';
    foreach ( $tableau_images as $image ) {
        echo '<li><img src="'.$image.'" /></li>';
    }
    echo '</ul>';
?>

Ce n'est qu'un exemple de code qui est loin d'être parfait, mais ça donne une idée de ce qui est possible. N'hésitez pas à demander si certaines choses ne sont pas claires.
0
solida Messages postés 97 Date d'inscription vendredi 14 novembre 2008 Statut Membre Dernière intervention 1 juin 2010 16 > pyschopathe Messages postés 1974 Date d'inscription dimanche 2 mars 2008 Statut Membre Dernière intervention 22 mars 2010
23 nov. 2008 à 00:46
ok merci
pour cette fonction $_FILES['image']['name']; je dois changer le paramettre "image"et"name" ou il ca passe comme ça meme question pour $_FILES['image']['tmp_name']
et merciii d'avance pr les réponses
0
pyschopathe Messages postés 1974 Date d'inscription dimanche 2 mars 2008 Statut Membre Dernière intervention 22 mars 2010 135 > solida Messages postés 97 Date d'inscription vendredi 14 novembre 2008 Statut Membre Dernière intervention 1 juin 2010
25 nov. 2008 à 00:02
"image" correspond au nom dans le formulaire d'envoi, comme je l'ai indiqué dans mon message précédent. Les autres noms sont gérés par PHP (name, tmp_name, error...)
0
solida Messages postés 97 Date d'inscription vendredi 14 novembre 2008 Statut Membre Dernière intervention 1 juin 2010 16 > pyschopathe Messages postés 1974 Date d'inscription dimanche 2 mars 2008 Statut Membre Dernière intervention 22 mars 2010
25 nov. 2008 à 01:51
ok merci mnt j'ai compris
0

Discussions similaires