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 :

Affichage image depuis BDD


Sujet :

Langage PHP

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    mai 2022
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 21
    Localisation : France, Eure et Loir (Centre)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : mai 2022
    Messages : 29
    Points : 3
    Points
    3
    Par défaut Affichage image depuis BDD
    Bonjour,
    J'essaye d'afficher des images dans mes articles. Les liens de mes images sont stockés dans une table images est mes articles dans deux tables différentes.
    J'ai réussi à afficher la liste de mes articles avec l'image associés. Petit problème si j'ai différentes images associés à mon article cela m'affiche mon article en plusieurs fois.
    J'essaye aussi de faire en sorte que lorsque je clique sur mon article cela m'ouvre une page avec les informations mais depuis que j'essayes d'afficher mes images cela ne marche plus.
    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
    if(isset($_GET['id']) AND !empty($_GET['id'])){
        $getid = $_GET['id'];
     
        $recupArticle = $bdd->prepare('SELECT articles.id, articles.titre, articles.description, images.lien FROM articles RIGHT JOIN images WHERE id = ? ON images.idimages = articles.idarticles');
        $recupActifsAero->execute(array($getid));
     
        if($recupActifsAero->rowCount()>0){
            $actifsAeroInfos = $recupActifsAero->fetch();
            $titre = $actifsAeroInfos['titre'];
            $description = $actifsAeroInfos['description'];
            $images = $actifsAeroInfos['lien'];
        }else{
            echo "Aucun articles trouvé";
        }
    }else{
        echo "Identifiant non trouvé";
    }
    Ma page web affichant Identifiant non trouvé j'en conclut que cela vient soit de ma fonction $getid ou de ma requête SQL.

    Merci pour votre aide

  2. #2
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    octobre 2006
    Messages
    9 515
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : octobre 2006
    Messages : 9 515
    Points : 4 887
    Points
    4 887
    Billets dans le blog
    1
    Par défaut
    Bonjour,


    $recupArticle = $bdd->prepare('SELECT articles.id, articles.titre, articles.description, images.lien FROM articles RIGHT JOIN images WHERE id = ? ON images.idimages = articles.idarticles');.
    ça serait pas plutôt

    $recupActifsAero = $bdd->prepare('SELECT articles.id, articles.titre, articles.description, images.lien FROM articles RIGHT JOIN images WHERE id = ? ON images.idimages = articles.idarticles');.


    Mais vu que tu passes dans le else, quelle est la valeur de $_GET au début de ton script ?
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

  3. #3
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    mai 2022
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 21
    Localisation : France, Eure et Loir (Centre)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : mai 2022
    Messages : 29
    Points : 3
    Points
    3
    Par défaut
    C'est justement le début de mon script, la valeur est l'id de mon article.
    J'ai du très certainement m'embrouillé sur la logique de ma bdd

  4. #4
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    octobre 2006
    Messages
    9 515
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : octobre 2006
    Messages : 9 515
    Points : 4 887
    Points
    4 887
    Billets dans le blog
    1
    Par défaut
    ce que je voulais dire, c'est rajoute un var_dump et dis ce que ça affiche :
    Code php : 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
    <?php
    var_dump($_GET);
    if(isset($_GET['id']) AND !empty($_GET['id'])){
    $getid = $_GET['id'];
     
    $recupArticle = $bdd->prepare('SELECT articles.id, articles.titre, articles.description, images.lien FROM articles RIGHT JOIN images WHERE id = ? ON images.idimages = articles.idarticles');
    $recupActifsAero->execute(array($getid));
     
    if($recupActifsAero->rowCount()>0){
    $actifsAeroInfos = $recupActifsAero->fetch();
    $titre = $actifsAeroInfos['titre'];
    $description = $actifsAeroInfos['description'];
    $images = $actifsAeroInfos['lien'];
    }else{
    echo "Aucun articles trouvé"; 
    }
    }else{
    echo "Identifiant non trouvé";
    }
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

  5. #5
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    mai 2022
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 21
    Localisation : France, Eure et Loir (Centre)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : mai 2022
    Messages : 29
    Points : 3
    Points
    3
    Par défaut
    Du coup j'ai mis un varDump et cela m'affiche
    array(1) { ["id4"]=> string(0) "" } Identifiant non trouvé

  6. #6
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    octobre 2006
    Messages
    9 515
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : octobre 2006
    Messages : 9 515
    Points : 4 887
    Points
    4 887
    Billets dans le blog
    1
    Par défaut
    Donc ça explique le passage dans le else. Peux-tu donner le code qui appelle ton script ? (on pourra comprendre ce id4)
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

  7. #7
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    mai 2022
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 21
    Localisation : France, Eure et Loir (Centre)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : mai 2022
    Messages : 29
    Points : 3
    Points
    3
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <container>
                <div class="actifsAero">
                    <h1><?= $titre; ?></h1>
                    <p><?= $description; ?></p>
                    <img src='<?= $actifsAeroInfos['lien']; ?>'>
                </div>
            </container>
    Voila

  8. #8
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    octobre 2006
    Messages
    9 515
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : octobre 2006
    Messages : 9 515
    Points : 4 887
    Points
    4 887
    Billets dans le blog
    1
    Par défaut
    C'est quoi cette balise <container> ? Et dans le code que tu montres, il n'y a nul part un appel à ton script...

    Le mieux est peut-être que tu donnes le code entier de ton application (sans juger que telle ou telle partie ne sert à rien de la montrer)
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

  9. #9
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    mai 2022
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 21
    Localisation : France, Eure et Loir (Centre)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : mai 2022
    Messages : 29
    Points : 3
    Points
    3
    Par défaut
    Désolé du coup voici tout mon code
    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
    <?php
    $bdd = new PDO('lien de ma bdd');
    var_dump($_GET);
    if(isset($_GET['id']) AND !empty($_GET['id'])){
        $getid = $_GET['id'];
     
        $recupActifsAero = $bdd->prepare('SELECT actifsaero.id, actifsaero.titre, actifsaero.description, images.lien FROM actifsaero RIGHT JOIN images WHERE id = ? ON images.idimages = actifsaero.idaero');
        $recupActifsAero->execute(array($getid));
     
        if($recupActifsAero->rowCount()>0){
            $actifsAeroInfos = $recupActifsAero->fetch();
            $titre = $actifsAeroInfos['titre'];
            $description = $actifsAeroInfos['description'];
            $images = $actifsAeroInfos['lien'];
        }else{
            echo "Aucun actifs aéroportuaires trouvé";
        }
    }else{
        echo "Identifiant non trouvé";
    }
     
        include('../head.php'); ?> 
        <title><?= $titre; ?></title>
    </head>
    <body>
      <section id="implantationAeroport">
          <a id="implantationAeroport">
            <?php include("navbarHaute.php"); ?>
            <?php include("navbar.php"); ?>
            <container>
                <div class="actifsAero">
                    <h1><?= $titre; ?></h1>
                    <p><?= $description; ?></p>
                    <img src='<?= $actifsAeroInfos['lien']; ?>'>
                </div>
            </container>
          </a>
        </section>
        <?php include("../footer.php"); ?>
    </body>
    </body>
    <script src="../../assets/js/nav.js"></script>
    </html>

  10. #10
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    octobre 2006
    Messages
    9 515
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : octobre 2006
    Messages : 9 515
    Points : 4 887
    Points
    4 887
    Billets dans le blog
    1
    Par défaut
    Quelques remarques :

    1- une balise fermante </head> mais pas de balise ouvrante ;

    2- 2 fois l'identifiant implantationAeroport ;

    3- balise inconnue <container> ;

    4- 2 fois la balise fermante </body> ;

    5- rien qui puisse générer la variable $_GET['id'] (ou $_GET['id4']) ;

    6- une balise fermante </html> mais pas de balise ouvrante.

    Ce qui m'embête le plus est le point 5.
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

  11. #11
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    mai 2022
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 21
    Localisation : France, Eure et Loir (Centre)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : mai 2022
    Messages : 29
    Points : 3
    Points
    3
    Par défaut
    Du coup l'explication de certains point

    1- une balise fermante </head> mais pas de balise ouvrante ;
    La balise ouvrante est dans un dans head.php que j'ai appelé avec un include.

    2- 2 fois l'identifiant implantationAeroport ;
    J'avais fait ca par rapport a ma navbar faut que je regarde si les deux sont nécessaire.

    3- balise inconnue <container> ;
    C'est par rapport à mon fichier CSS. Mais pour l'instant elle ne me sert pas à grand chose.

    4- 2 fois la balise fermante </body> ;
    Erreur de ma part mais maintenant corriger, merci

    6- une balise fermante </html> mais pas de balise ouvrante.
    Même problème que pour le point numéro 1 c'est pas forcément une bonne habitude

  12. #12
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    mai 2022
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 21
    Localisation : France, Eure et Loir (Centre)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : mai 2022
    Messages : 29
    Points : 3
    Points
    3
    Par défaut
    Et pour le point
    5- rien qui puisse générer la variable $_GET['id'] (ou $_GET['id4']) ;
    J'ai pas vraiment compris ce que tu voulais dire mais en gros je passe par l'URL grâce à ce fichier

    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
    <?php $bdd = new PDO('lien de ma bdd');
    include('../head.php'); ?>
      <title>Actifs aéroportuaires</title>
    </head>
    <body>
      <section id="implantationAeroport">
          <a id="implantationAeroport">
            <?php include("navbarHaute.php"); ?>
            <?php include("navbar.php"); ?>
            <container>
            <?php
            $recupactifsAero = $bdd->query('SELECT actifsaero.id, actifsaero.titre, actifsaero.description, images.lien FROM images RIGHT JOIN actifsaero ON images.idimages = actifsaero.idaero');
            while($actifsAero = $recupactifsAero->fetch()){
              ?>
              <div class="actifsAero">
                <h2><?= $actifsAero['titre']; ?></h2>
                <p><?= $actifsAero['description']; ?></p>
                <img src='<?= $actifsAero['lien']; ?>'>
                <br>
                <a href="ficheBatimentAeroTest.php?id<?= $actifsAero['id']; ?>"><button style="background-color:blue; color:white">Accéder au batiment</button></a>
                <hr>
              </div>
              <?php
            }
            ?>
            </container>
          </a>
        </section>
        <?php include("../footer.php"); ?>
    </body>
    </body>
    <script src="../../assets/js/nav.js"></script>
    </html>
    Petit problème avec ce fichier c'est que si je donnes plusieurs images à un actifs cela me l'affiche autant de fois que j'ai l'image

  13. #13
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    octobre 2006
    Messages
    9 515
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : octobre 2006
    Messages : 9 515
    Points : 4 887
    Points
    4 887
    Billets dans le blog
    1
    Par défaut
    Ce que je voulais dire, en gros, c'est que je croyais voir tout ton code, et tu viens de m'en montrer plus...

    Dans ce nouveau code, il manque un = :
    <a href="ficheBatimentAeroTest.php?id=<?= $actifsAero['id']; ?>"><button style="background-color:blue; color:white">Accéder au batiment</button></a>.

    Pas cherché pour ton "petit problème".

    J'ai aussi des remarques sur ton code SQL, mais c'est juste pour améliorer la lisibilité (et l'évolutivité).
    Aussi, tu devrais éviter le CSS inline.
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

  14. #14
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    mai 2022
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 21
    Localisation : France, Eure et Loir (Centre)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : mai 2022
    Messages : 29
    Points : 3
    Points
    3
    Par défaut
    Pas de soucis chaque choses en son temps.
    En tout cas merci tu viens de corriger un de mes problèmes

    Mais je n'arrive toujours pas à afficher mes images.

  15. #15
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    mai 2022
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 21
    Localisation : France, Eure et Loir (Centre)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : mai 2022
    Messages : 29
    Points : 3
    Points
    3
    Par défaut
    Est ce que tu penses que je peux avec ma première requête SQL afficher mes images ou ce serait mieux de faire une requête SQL pour chaque tables ?

  16. #16
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    octobre 2006
    Messages
    9 515
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : octobre 2006
    Messages : 9 515
    Points : 4 887
    Points
    4 887
    Billets dans le blog
    1
    Par défaut
    Mais je n'arrive toujours pas à afficher mes images.
    Il y a un affichage d'image ligne 18 du code du post #12 et un autre ligne 34 du post #9. Lequel marche pas ?

    J'ai un peu du mal avec ta requête du post #9 : SELECT actifsaero.id, actifsaero.titre, actifsaero.description, images.lien FROM actifsaero RIGHT JOIN images WHERE id = ? ON images.idimages = actifsaero.idaero.

    Dans la clause WHERE, on dit pas le id de quelle table il s'agit (je suis étonné qu'il y ait pas un message d'erreur) et elle est en plein milieu de la jointure. Si tu la mettais plutôt à la fin ?

    Quand tu dis, une requête pour chaque table, je ne comprend pas.

    Pour que j'y vois plus clair, merci de me donner aussi la structure de tes tables (un export SQL du DDL).
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

  17. #17
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    mai 2022
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 21
    Localisation : France, Eure et Loir (Centre)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : mai 2022
    Messages : 29
    Points : 3
    Points
    3
    Par défaut
    Désolé je n'avais pas vu votre réponse.

    L'affichage du post #12 marche mais pas celui du post #9 par rapport à ma requête SQL cela m'envoie bien un message d'erreur et même si je met l'id = ? à la fin

    Voici ma bdd
    Code sql : 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
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    -- phpMyAdmin SQL Dump
    -- version 5.1.3
    -- https://www.phpmyadmin.net/
    --
    -- Hôte : 127.0.0.1
    -- Généré le : jeu. 05 mai 2022 à 09:41
    -- Version du serveur : 10.4.24-MariaDB
    -- Version de PHP : 8.1.5
     
    SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
    START TRANSACTION;
    SET time_zone = "+00:00";
     
    --
    -- Base de données : `Air`
    --
     
    -- --------------------------------------------------------
     
    --
    -- Structure de la table `actifsaero`
    --
     
    CREATE TABLE `actifsaero` (
      `id` int(255) NOT NULL,
      `titre` varchar(255) NOT NULL,
      `description` text NOT NULL,
      `idaero` int(255) NOT NULL
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
     
    --
    -- Déchargement des données de la table `actifsaero`
    --
     
    INSERT INTO `actifsaero` (`id`, `titre`, `description`, `idaero`) VALUES
    (1, 'bat1', 'Premier bâtiment.<br />\r\n<br />\r\nParfait.', 1),
    (4, 'bat2', 'Ceci est un autre bâtiment', 2),
    (5, 'bat3', 'Ce bâtiment est excellent', 3);
     
    -- --------------------------------------------------------
     
    --
    -- Structure de la table `actifsnonaero`
    --
     
    CREATE TABLE `actifsnonaero` (
      `id` int(11) NOT NULL,
      `titre` varchar(255) NOT NULL,
      `description` text NOT NULL,
      `idnonaero` int(255) NOT NULL
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
     
    --
    -- Déchargement des données de la table `actifsnonaero`
    --
     
    INSERT INTO `actifsnonaero` (`id`, `titre`, `description`, `idnonaero`) VALUES
    (2, 'Burger King', 'Un burger King va ouvrir dans deux mois', 1),
    (4, 'Bar', 'Bar restaurant', 3),
    (6, 'Testimage', 'ceci est un test', 2),
     
    -- --------------------------------------------------------
     
    --
    -- Structure de la table `images`
    --
     
    CREATE TABLE `images` (
      `id` int(11) NOT NULL,
      `lien` varchar(255) NOT NULL,
      `idimages` int(255) NOT NULL
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
     
    --
    -- Déchargement des données de la table `images`
    --
     
    INSERT INTO `images` (`id`, `lien`, `idimages`) VALUES
    (8, 'images/avion1.jpg', 1),
    (11, 'images/avion4.png', 2),
    (12, 'images/avion3.jpg', 2),
    (13, 'images/planBase.jpg', 1),
    (17, 'images/planBase.jpg', 3);
     
    --
    -- Index pour les tables déchargées
    --
     
    --
    -- Index pour la table `actifsaero`
    --
    ALTER TABLE `actifsaero`
      ADD PRIMARY KEY (`id`);
     
    --
    -- Index pour la table `actifsnonaero`
    --
    ALTER TABLE `actifsnonaero`
      ADD PRIMARY KEY (`id`);
     
    --
    -- Index pour la table `images`
    --
    ALTER TABLE `images`
      ADD PRIMARY KEY (`id`),
      ADD KEY `idimages` (`idimages`),
      ADD KEY `idimages_2` (`idimages`),
      ADD KEY `idimages_3` (`idimages`);
     
    --
    -- AUTO_INCREMENT pour les tables déchargées
    --
     
    --
    -- AUTO_INCREMENT pour la table `actifsaero`
    --
    ALTER TABLE `actifsaero`
      MODIFY `id` int(255) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=6;
     
    --
    -- AUTO_INCREMENT pour la table `actifsnonaero`
    --
    ALTER TABLE `actifsnonaero`
      MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=10;
     
    --
    -- AUTO_INCREMENT pour la table `images`
    --
    ALTER TABLE `images`
      MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=18;
    COMMIT;

  18. #18
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    mai 2022
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 21
    Localisation : France, Eure et Loir (Centre)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : mai 2022
    Messages : 29
    Points : 3
    Points
    3
    Par défaut
    En faisant quelques recherches sur j'ai améliorer ma requête SQL
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT actifsaero.id, actifsaero.titre, actifsaero.description, images.lien FROM actifsaero RIGHT JOIN images ON images.idimages = actifsaero.idaero AND actifsaero.id = `?`
    Mais cela me renvoie
    Fatal error: Uncaught PDOException: SQLSTATE[42S22]: Column not found: 1054 Unknown column ''1'' in 'on clause' in C:\xampp\htdocs\monsite\ficheBatimentAeroTest.php:11 Stack trace: #0 C:\xampp\htdocs\monsite\ficheBatimentAeroTest.php(11): PDOStatement->execute(Array) #1 {main} thrown in C:\xampp\htdocs\monsite\ficheBatimentAeroTest.php on line 11

  19. #19
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    octobre 2006
    Messages
    9 515
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : octobre 2006
    Messages : 9 515
    Points : 4 887
    Points
    4 887
    Billets dans le blog
    1
    Par défaut
    Je reprendrai cet après-midi mais avec l'export de ta bdd que tu m'as donné, la requête
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT actifsaero.id, actifsaero.titre, actifsaero.description, images.lien 
    FROM actifsaero RIGHT 
    JOIN images ON images.idimages = actifsaero.idaero AND actifsaero.id = 1
    donne un résultat qui semble correct...
    Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell

  20. #20
    Expert confirmé Avatar de CosmoKnacki
    Homme Profil pro
    Justicier interdimensionnel
    Inscrit en
    mars 2009
    Messages
    2 557
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Justicier interdimensionnel

    Informations forums :
    Inscription : mars 2009
    Messages : 2 557
    Points : 5 742
    Points
    5 742
    Par défaut
    il ne faut pas mettre de quotes autour d'un placeholder.
    Brachygobius xanthozonus
    Ctenobrycon Gymnocorymbus

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 4 1234 DernièreDernière

Discussions similaires

  1. [MySQL] ré-affichage checkboxs depuis bdd pour update
    Par Evelyne31 dans le forum PHP & Base de données
    Réponses: 34
    Dernier message: 22/03/2019, 19h06
  2. Affichage Image depuis BD Access
    Par AbouZaid dans le forum Interfaces Graphiques en Java
    Réponses: 2
    Dernier message: 07/10/2013, 17h30
  3. ré-affichage checkbox depuis bdd
    Par nicomax34 dans le forum Langage
    Réponses: 6
    Dernier message: 12/07/2011, 17h47
  4. Réponses: 3
    Dernier message: 03/01/2008, 17h24
  5. Problème d'affichage d'image depuis une pseudo-frames
    Par kriss_87 dans le forum Langage
    Réponses: 2
    Dernier message: 24/05/2006, 22h39

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