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 :

Binding resultat requête mysql [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre habitué
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Novembre 2013
    Messages
    226
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2013
    Messages : 226
    Points : 134
    Points
    134
    Par défaut Binding resultat requête mysql
    Bonjour,

    Je souhaite afficher une liste de questionnaire présent dans une table questionnaire sur mysql.

    Nom : Capture_sql.PNG
Affichages : 81
Taille : 10,5 Ko

    Dans mon code j'ai binding_result titre du questionnaire 1 et titre questionnaire 2.

    Nom : Capture_codesql.PNG
Affichages : 83
Taille : 5,0 Ko

    Or sur ma page localhost j'ai que le premier titre qui s'affiche.

    Nom : Capture_page.PNG
Affichages : 74
Taille : 5,2 Ko

    Je sais que le message d'erreur vient du fait que j'ai écrit un écho pour le titre 2 dans mon code.
    En pensant qu'il suffit de rajouter titre 2 et le deuxième titre aller s'afficher.

    Avez-vous des explications sur ce mystère .

    En vous remerciant par avance.

    Cordialement

  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
    Points : 44 155
    Points
    44 155
    Par défaut
    Les arguments de bind_result() correspondent aux colonnes et non aux lignes.

    Pour avoir les lignes, il faut faire une boucle :
    http://php.net/manual/fr/mysqli-stmt.bind-result.php
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre habitué
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Novembre 2013
    Messages
    226
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2013
    Messages : 226
    Points : 134
    Points
    134
    Par défaut
    Merci ,

    Du coup il faut faire une boucle dans le code PHP? Désolé si je pose des questions bêtes mais c'est la première fois que je fais ce type lien entre sql et une page.

    Merci d'avance.

  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
    Points : 44 155
    Points
    44 155
    Par défaut
    L'étape fetch() lit une ligne de résultat.
    On lit donc les lignes de résultat une par une dans un boucle avec fetch().
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre habitué
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Novembre 2013
    Messages
    226
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2013
    Messages : 226
    Points : 134
    Points
    134
    Par défaut
    Merci sabotage,

    ci-dessous ma page avec le script pour aller dans la base.

    Il faut faire une boucle sur la ligne 20?

    Ma requête est peut-être fausse !!

    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
    <?php
     
    $database = new mysqli("localhost", "root", "", "mysql");
    //message d'erreur
    if (mysqli_connect_errno()) {
        echo("<p>Echec de la connexion avec la base de données.</p>");
        exit();
    }
    //requête
    $query = "SELECT TitQuest FROM Questionnaire ";
    //préparation de la requête
    $stmt = $database -> prepare($query);
    //binding des paramètres
     
    //exécution de la requête
    $stmt -> execute();
    //binding des résultats
    $stmt -> bind_result($titre1);
    //récupération des résultats
    $stmt -> fetch();
    //arrêt du traitement
    $stmt -> close();
    //coupure de la connection avec la base de es
    $database -> close();
    //traitement des résultats (pour le moment, un simple 'echo')
     
    ?>
     
     
     
    <!DOCTYPE html>
    <html>
        <meta charset="utf-8" />
    <html>
     <head>
      <title>Liste questionnaire</title>
      <link href="style.css" rel="stylesheet" type="text/css" />
      </head>
      <body>
     
      <div id="header">
     
    <h2> Bienvenue sur la liste questionnaires </h2>
     
      </div>
     
       <div id="main">
        <p>
             <?php
             echo $titre1 ;
             ?>
        </p>
     
         <?php
             echo $titre2 ;
         ?>
     
       </div>
     
       <div id="footer">
            <p>Copyright moi, tous droits reservs</p>
     
       </div>
     
     
      </body>
     
     
     </html>
    Merci pour votre aide

  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
    Points : 44 155
    Points
    44 155
    Par défaut
    Tu as une exemple dans le lien que je t'ai donné.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  7. #7
    Membre habitué
    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    Novembre 2013
    Messages
    226
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2013
    Messages : 226
    Points : 134
    Points
    134
    Par défaut
    Merci Sabotage, je vais lire attentivement le manuel PHP.

    Bonne journée

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

Discussions similaires

  1. [MySQL] Resultat d'une requête mysql dans un tableau.
    Par ns_deux dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 06/01/2009, 14h03
  2. Arrêt de l'exécution d'une requête MySQL dans DELPHI.
    Par joelmarc dans le forum Bases de données
    Réponses: 9
    Dernier message: 11/10/2004, 16h11
  3. surcharge de requête MySQL
    Par simoryl dans le forum Requêtes
    Réponses: 4
    Dernier message: 15/06/2004, 10h43
  4. requête mysql sous php
    Par remi59 dans le forum Débuter
    Réponses: 9
    Dernier message: 03/07/2003, 10h39

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