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

PHP & Base de données Discussion :

Afficher image et description stockée dans MySQL [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    développeur web
    Inscrit en
    Août 2015
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : développeur web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2015
    Messages : 26
    Par défaut Afficher image et description stockée dans MySQL
    Bonjour,

    Je me heurte à un mur depuis des jours déjà. J'arrive à uploader une image et sa description mais pas à l'afficher.

    Je voudrais qu'a l'ajout de cet upload, en dessou de cette même page, l'image et la description de l'image s'affiche.
    Par la suite j'aimerai afficher cette image et cette description dans l'index.php.

    Le formulaire HTML
    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
     
     <p>Ici vous pouvez ajouter ou supprimer une image.</p>
     
    			 <form method="post" action="produits.php" enctype="multipart/form-data">
     
    		 <br/>
    		 		 <label for="image">Upload image</label>
     
    				 <input type="file" id="file" name="image" required="required"/>
    		 <br/>
    				 <label for="desc">Description</label>
    				 <textarea id="desc" name="desc" required="required"></textarea> <!-- Remplir ce champ est requis -->
    		 <br/>
    				 <input type="submit" name="sumit" value="Créer l'actualité">
    		 	</form>

    ensuite le code PHP qui permet l'upload et de préparer tout ceci dans un array ! À noter que j'utilise la class_upload.php.
    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
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
     
    include 'ressource/class.upload.php';
     
     
    // Instanciation de l'objet de traitement pour l'upload
     
     
    $monFichier = new upload($_FILES['image']);
     
    // Force l'écrasement si un fichier existe déjà avec le même nom
    $monFichier->file_overwrite = true;
     
    if ($monFichier->uploaded) {
    	// Gestion de la sauvegarde de l'original
    	$monFichier->process('C:\\xampp\\htdocs\\Morand\\images\\uploads\\');
     
     
    	if ($monFichier->processed) {
    		$monFichier->clean();
     
    		if(isset($_POST['sumit'], $_POST['desc'])) {
     
    			if(!empty($_POST['sumit']) && !empty($_POST['desc']))
    			{
     
     
    				$text =$_POST['desc'];
     
    				$insert_desc = $bdd->prepare("INSERT INTO images VALUES ('', '', :desc, '1')"); 
    				$insert_desc->execute(array(
    				':desc' => $text
    				));
     
    				$insert_desc = $bdd->prepare("UPDATE images SET image=?"); 
    				$insert_desc->execute(array(
    												$monFichier->file_dst_name
    												));				
    			}
    			}
     
    		}
     
    	}
     
     
    	$produits = array();
     
    	$insert_desc = $bdd->prepare("SELECT id, image, desc, valid FROM images WHERE valid = '1'"); # Selection de toutes les news valides
    	$insert_desc->execute();
     
    	while($result = $insert_desc->fetch(PDO::FETCH_ASSOC))
    	{
    		$produits[] = $result; # Replissage du tableau avec ces valeurs
    	}
     
    	print_r ($produits);
     
     
    ?>
    et enfin on l'affiche sur cette même page (et ça ne fonctionne pas donc)
    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
    23
    24
    25
    26
     
    <ul id="news">
     
    	 <?php
     
     
     foreach($produits as $pr) # Boucle qui affiche les news
    		 {
    			 echo '
    					<li>
    						 <article>
    							 <header>
    								 <h5>'.$pr['desc'].'</h5>
    							 </header>
    
    							
    						 
    						 </article>
    					</li>
    		';
    		 }
     
    	?>
     
     
     </ul>
    je n'ai pas mis l'affichage <img src="..." ...> car je ne sais pas du tout comment afficher.
    Mais la description de l'image devrait s'afficher déjà, mais elle ne s'affiche pas je comprends pas ...

    Merci d'avance pour votre aide

  2. #2
    Modérateur

    Avatar de MaitrePylos
    Homme Profil pro
    DBA
    Inscrit en
    Juin 2005
    Messages
    5 506
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 506
    Par défaut
    Il y a quelque chose dans la db ?

  3. #3
    Membre averti
    Homme Profil pro
    développeur web
    Inscrit en
    Août 2015
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : développeur web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2015
    Messages : 26
    Par défaut
    Merci de ta réponse !

    Dans la DB il y a bien l'image ET la description qui sont inscrit donc l'upload ce fait bien !

    J'ai oublié de préciser mais je fais un print_r ($produits); pour voir ce qu'il y a dans l'array mais c'est marqué ''array ()''

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    1/ 2 requêtes ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    				$insert_desc = $bdd->prepare("INSERT INTO images VALUES ('', '', :desc, '1')"); 
    				$insert_desc->execute(array(
    				':desc' => $text
    				));
     
    				$insert_desc = $bdd->prepare("UPDATE images SET image=?"); 
    				$insert_desc->execute(array(
    												$monFichier->file_dst_name
    												));
    1 seule suffit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    				$insert_desc = $bdd->prepare("INSERT INTO images VALUES ('', :image, :desc, '1')"); 
    				$insert_desc->execute(array(
    				':image' => $monFichier->file_dst_name,
    				':desc' => $text
    				));
    2/
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     	$select_desc = $bdd->prepare("SELECT id, image, desc, valid FROM images WHERE valid = '1'"); # Selection de toutes les news valides
    	$select_desc->execute();
     
    	$produits = $select_desc->fetchAll(PDO::FETCH_ASSOC);
    3/ Affichage de l'image :
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    	echo '<img src="/images/uploads/'.htmlspecialchars($pr['image']).'" alt="" />';
    (chemin à vérifier)


    CONSEIL : LIS des tutos...
    Et avant de coder : il faut réfléchir avec LOGIQUE à une bonne CONCEPTION.
    Dernière modification par Invité ; 01/09/2015 à 17h15.

  5. #5
    Membre averti
    Homme Profil pro
    développeur web
    Inscrit en
    Août 2015
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : développeur web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2015
    Messages : 26
    Par défaut
    Merci de la réponse, très complète !

    Je test ce soir ou demain et je vous tiens au courant !



    une chose que je comprends pas c'est le .htmlspecialchars
    maj : c'est ok j'ai lu quelques infos sur htmlspecialchars qui convertit des entité en html !

  6. #6
    Invité
    Invité(e)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Wiki] Comment afficher les images de wiki stockés dans BDD Mysql
    Par alhakam dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 2
    Dernier message: 06/05/2013, 23h38
  2. [MySQL] Images stockées dans MySQL
    Par Lereyn dans le forum PHP & Base de données
    Réponses: 9
    Dernier message: 29/03/2009, 21h11
  3. [MySQL] Télécharger images stockées dans mysql
    Par else_if dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 14/05/2008, 05h53
  4. [MySQL] afficher image stockée dans mysql
    Par dino-info dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 05/05/2008, 01h10
  5. [MySQL] Afficher une image stockée dans MySql
    Par yanng dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 12/11/2007, 20h56

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