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 des images via php mysql


Sujet :

PHP & Base de données

  1. #1
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2014
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2014
    Messages : 28
    Par défaut Afficher des images via php mysql
    bonsoir , voila je veux afficher une image avec php de façon que le lien est stocké au preàble dans la base de données mais ca marche pas
    voici le code de connexion à ma BDD
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
     
    <?php
    // Fichier de connexion à la BDD : cnxBDD.php
    try{
      $pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
      $bdd = new PDO('mysql:host=localhost;dbname=pro', 'root', '',$pdo_options);
    }catch(PDOException $e){
      // En cas d'erreur précédemment, on affiche un message et onarrête tout
      die('Erreur : '.$e->getMessage());
    }
    ?>


    et le code de ma page

    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
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
     
    <?php
    //--------------------------------------------------//
    // Connexion à la BDD
    //--------------------------------------------------//
    require_once "cnxBDD.php";
     
    //--------------------------------------------------//
    // On récupère tout le contenu de la table 
    //--------------------------------------------------//
    $sql = "SELECT * FROM pizza" ;
     
    //--------------------------------------------------//
    //on exécute la requete
    //--------------------------------------------------//
    try{
      $prepare = $bdd->prepare($sql);
      $prepare->execute();
      //on stocke le résultat dans un ARRAY
      $result = $prepare->fetchAll();
    }catch (Exception $e){
      //en cas d'erreur dans la requete
      echo "Erreur ! ". $e->getMessage();
    }
     
     
    //--------------------------------------------------//
    //Fin du code PHP 
    ?>
    <!DOCTYPE html>
    <html>
      <head>
        <title> Acceuille </title>
        <link rel="stylesheet" href="abc.css">
        <meta charset='utf-8'>
      </head>
      <body>
        <div class="c1">
          <header>
            <a href="acceuille.html">
              <img src="spac.png" style="width:auto;height: auto;">
            </a>
            <div class="login">
            </div>
            <a href="[http://facebook.com]" id="fb"> </a>
            <a href="[http://instagram.com]" id="insta"></a>
            <a href="[http://youtube.com]" id="tube"></a>
            <a href="[http://flickr.com]" id="ft"></a>
            <a href="[http://tweeter.com]" id="tw"></a>
            <a href="[https://linkedin.com/]" id="in"></a>
          </header>
        </div>
        <section>
          <ul>
            <nav>
              <ul>
                <li>
                  <a href="sandwiches.php"> 
                    <img src="sandwitch.png" style="width: 185px;height: 80px ;"> 
                  </a>
                </li>
                <li>
                  <a href="pizza.html">
                    <img src="hamburger.png" style="width: 185px;height: 80px ;"> 
                  </a>
                </li>
                <li>
                  <a href="pizza.php"> 
                    <img src="pizza.jpg" style="width: 185px;height: 80px ;"> 
                  </a>
                </li>
                <li>
                  <a href="desserts.php"> *
                    <img src="dessert.jpg" style="width: 185px;height: 80px ;"> 
                  </a>
                </li>
                <li>
                  <a href="boissons.php"> 
                    <img src="soda.png" style="width: 185px;height: 80px ;"> 
                  </a>
                </li>
              </ul>
            </nav>
          </ul>
        </section>
     
        <?php
        //on parcoure le résultat de la requête
         foreach($result as $donnees){
           echo "<p class='titre'>";
           echo "<strong>pizza</strong> : ".$donnees['nom']."<br />";
    $image = $donnees['img'];
    if(file_exists($image)){
    echo "<img src='$image'></img>";
    }else{
     echo "<br> Le fichier $image est introuvable.<br>Verifier le chemin et/ou le nom du fichier !";
    }
           echo "elle contient :".$donnees['contenu'].", et son prix et de :".$donnees['prix']."dinar !<br />";
         }
        ?>
      </body>
    </html>
    il m"affiche le msg d"erreur comme quoi mon image est introuvable donc je pense que le blem viens du chemin mais j"ai pas trouver
    donc voici ma bdd :

    Nom : cap2.PNG
Affichages : 1032
Taille : 69,6 Ko




    et voici ou mon dossier d"image est repetorier

    Nom : lien.PNG
Affichages : 984
Taille : 21,1 Ko



    voila je vous remercie d"avance merci de vouloir bien m"aider ^^

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    En partant depuis la racine :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(file_exists($_SERVER['DOCUMENT_ROOT'] . DIRECTORY_SEPARATOR . $image)){
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2014
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2014
    Messages : 28
    Par défaut
    sa marche pas il m"affiche ce message d"erreur
    Notice: Undefined index: Lic/Ipizza in C:\wamp\www\Lic\testi.php on line 93
    alors que le dossier existe .....

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    La ligne 93 c'est celle du file_exists ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2014
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2014
    Messages : 28
    Par défaut
    ouiii

  6. #6
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Tu es sur de l'avoir bien copié ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  7. #7
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2014
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2014
    Messages : 28
    Par défaut
    voila ce que j"ai mis
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(file_exists($_SERVER['Lic/Ipizza'] . DIRECTORY_SEPARATOR . $image)){

  8. #8
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Quand tu as vu que ça faisait une erreur en mettant "'Lic/Ipizza'" eu lieu de DOCUMENT_ROOT tu ne t'es pas dit qu'il ne fallait peut être pas y toucher ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  9. #9
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2014
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2014
    Messages : 28
    Par défaut
    bhein j'avais laisser le code en premier lieu tel que vous me l'avez montrer et comme sa n'a pas marcher j'ai essayer le dernier et sa marche toujours pas ...

  10. #10
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Et avec le code que j'ai mis ça donne quoi precisement ?
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  11. #11
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2014
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Mars 2014
    Messages : 28
    Par défaut
    sa me dit que le dossier ou le fichier n'existe pas

  12. #12
    Membre éclairé
    Homme Profil pro
    Educateur spécialisé
    Inscrit en
    Janvier 2012
    Messages
    238
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Educateur spécialisé
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2012
    Messages : 238
    Par défaut
    Bonjour,
    Est ce que tu a déclaré ton array avant la requête sql $sql = "SELECT * FROM pizza" ;
    J'aurai essayé ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    $array_pizza = array(); // déclare le tableau
     
    $sql = $bdd->query("SELECT * FROM pizza");
     
    while ($donne_pizza = $sql ->fetch())
    	{
    		$array_pizza[$donne_pizza['id']][] = $donne_pizza;
    	}

  13. #13
    Membre du Club
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2016
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : Belgique

    Informations professionnelles :
    Activité : Retraité
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mai 2016
    Messages : 6
    Par défaut A titre d'info
    Hello,

    voici comment je gère ce genre de situation (toutes les photos se trouvent dans un sous répertoire "Photos"):
    1. recherche de l'adresse de l'image qui se trouve dans la base de données "Documents" (je prend la plus récente)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    $MemberPicture ='Select * from Documents where Type = 11 && Documents.Ident = any (select DocumentIdent from Member_Document where MemberIdent = :Ident) order by Modificationdate '; 
     
    	$Stmt = $bdd->prepare($MemberPicture);
    	$Stmt ->bindParam(':Ident', $Ident );
    	$Data = $Stmt->execute();
    	$Data = $Stmt-> fetch();
     
    $Id_Picture = "./Photos/".$Data['Eaddress'];
    2. affichage sous HTML
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <img src=<?php echo $Id_Picture ?> max width="130"  alt="Id Picture" title="Id_Portrait" style="float:right;" />

Discussions similaires

  1. afficher des images php/html
    Par Invité dans le forum Langage
    Réponses: 3
    Dernier message: 21/11/2013, 17h40
  2. [MySQL] Gestion des images avec PHP et MySQL
    Par helio500 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 13/06/2013, 09h39
  3. Afficher des images à partir de MySQL
    Par analystedodo dans le forum Android
    Réponses: 12
    Dernier message: 03/05/2012, 09h02
  4. Boucle pour afficher des images en php et html
    Par seïna dans le forum Langage
    Réponses: 5
    Dernier message: 23/04/2012, 17h00
  5. afficher des image sur php
    Par sooprano dans le forum Langage
    Réponses: 4
    Dernier message: 15/01/2009, 11h36

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