Partage
  • Partager sur Facebook
  • Partager sur Twitter

AIde pour une petit requête

arf je voit pas se que je doit mettre

    18 août 2006 à 21:06:15

    Bonsoir à tous ! J'éspère que la journée à était bonne pour vous :p Chez moi il a fait un super soleil et très chaud alors je suis content mdr :-°

    Sinon pour en revenir à mes moutons, j'ai un code php, le voici :

    <?php

    $resultat = '<table width="500" border="1" cellpadding="4"cellspacing="1" bgcolor="#FFFFFF" class="table" style="margin-left:10px;" >
                    <tr>
                            <td width="100" class="td_top"><strong>ID</strong></td>
                            <td width="100" class="td_top"><strong>Identifiant</strong></td>
                            <td width="100" class="td_top"><strong>Adresse email<strong></td>
                            <td width="100" class="td_top"><strong>Nom</strong></td>
                            <td width="100" class="td_top"><strong>Prénom</strong></td>
                            <td width="100" class="td_top"><strong>Parrain</strong></td>
                            <td width="100" class="td_top"><strong>Actif</strong></td>
                    </tr>'
    ;     

    // Connection et sélection de la base.
    mysql_connect("localhost", "max2rdgrdgrdg", "ptgrdgrdgrdg59");
    mysql_select_db("cesfesfdes");
                 

    // Requête.                 
    $req_membres = mysql_query("SELECT * FROM membres");
                   
    // Construction du résultat.   
    while ($datas_membres = mysql_fetch_array($req_membres)) {
            $resultat .= '<tr>
                                  <td>'
    .$datas_membres['id'].'</td>
                                  <td>'
    .$datas_membres['pseudo'].'</td>
                                  <td>'
    .$datas_membres['mail'].'</td>
                                  <td>'
    .$datas_membres['nom'].'</td>
                                  <td>'
    .$datas_membres['prenom'].'</td>
                                  <td>'
    .$datas_membres['parain'].'</td>
                                  <td>'
    .$datas_membres['active'].'</td>
                          </tr>'
    ;
    }

    $resultat .= '</table>';

    // On affiche le résultat.
    echo $resultat;

    ?>


    Maintenant j'ai un petit soucis, car le code juste au-dessus marche !
    Mais je voudrai rajouter un autre critère que voici :

    <?
     
    mysql_connect($host, $user, $pass);
    mysql_select_db($bdd);
                           
    $reponse = mysql_query("SELECT SUM(amount) AS total FROM credit WHERE pseudo='$pseudo'");
                                   
    mysql_close();
                                   
    while ($donnees = mysql_fetch_array($reponse))
                                           
    { // ouverture du while 1
    ?>
                  <? $credit = $donnees['total']; ?>



    Mais j'arrive pas à mettre ce code dans l'autre pour qu'il m'affiche bien dans le tableau le solde du membre

    Pourriez vous m'aider svp ?
    Merci beaucoup d'avance
    Bonne soirée :p
    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      18 août 2006 à 21:09:10

      SELECT id, pseudo, mail, nom, prenom, parain, (SELECT SUM(amount) FROM credit) AS total FROM membres WHERE pseudo='$pseudo'

      On n'utilise pas *.
      On nomme tous les champs.
      • Partager sur Facebook
      • Partager sur Twitter
        18 août 2006 à 21:17:10

        Arf j'ai mit :

        SELECT id, pseudo, mail, nom, prenom, parain, active, (SELECT SUM(amount) FROM credit) AS total FROM membres WHERE pseudo='$pseudo'


        Et sa m'affiche désormais page blanche :o
        Plus rien ne s'affiche :o
        • Partager sur Facebook
        • Partager sur Twitter
        Anonyme
          18 août 2006 à 21:18:52

          Passe la requete directement dans phpmyadmin et vois si ca te renvoie un resultat ou pas.
          • Partager sur Facebook
          • Partager sur Twitter
            18 août 2006 à 21:28:43

            Je vient de la taper, il me dit qu'il y a une erreur !

            Voici l'erreur qu'il me décelle :

            #1064 - You have an error in your SQL syntax near 'SELECT SUM(amount) FROM credit) AS total FROM membres WHERE pseudo='$pseudo'' at line 1
            • Partager sur Facebook
            • Partager sur Twitter
            Anonyme
              18 août 2006 à 21:31:29

              Question bête, tu as quelle version de mysql?
              • Partager sur Facebook
              • Partager sur Twitter
                18 août 2006 à 21:32:25

                Remplace la variable $pseudo par un pseudo existant dans la table...
                • Partager sur Facebook
                • Partager sur Twitter
                Anonyme
                  18 août 2006 à 21:33:54

                  Si ca venait du pseudo, il n'aurait pas d'erreur. ;)
                  • Partager sur Facebook
                  • Partager sur Twitter
                    18 août 2006 à 21:39:43

                    Je croit que de tête c la 4xx ou bien 3.4.x je sais plus exactement

                    sinon j'ai remplacer $pseudo par un pseudo déjà existant et sa ne donne toujours rien

                    Par contre j'ai rentrer sa dans pma :

                    SELECT mail, m.pseudo, amount FROM membres AS m, credit AS c WHERE m.id=1 AND m.id=c.id


                    et là il m'affiche bien le mail et le pseudo ainsi que le solde que le membre possède

                    mais sa marche pas dans le fichier php
                    • Partager sur Facebook
                    • Partager sur Twitter
                      18 août 2006 à 23:00:46

                      Oui mais dans le dernier code que tu nous à donner, il ne regarde que pour un seul id et non plusieurs ( enfin je croit :lol: )

                      Je sais pas, sans doute que Yondaime pourra trouver la solution ou bien quelqu'un d'autre

                      En tout cas, fait d'autres essais encore ;)
                      • Partager sur Facebook
                      • Partager sur Twitter
                        20 août 2006 à 11:30:22

                        UP SVP :euh::( j'ai vraiment besoin d'une réponse
                        • Partager sur Facebook
                        • Partager sur Twitter
                        Anonyme
                          20 août 2006 à 11:31:27

                          Citation : moi

                          Euh, ta requête, elle fonctionne dans phpmyadmin mais ca foire sur le fichier php?
                          Pas normal
                          Ca doit venir des noms de champs ou je sais pas trop quoi :/
                          Enfin, toujours est-il que si ca marche dans phpmyadmin, ca DOIT marcher partout.

                          essaie ca:
                          $req = 'ta requete';
                          $req = myslq_query($req) or die(mysql_error());
                          echo '<pre>';
                          while($res = mysql_fetch_assoc($req))
                          print_r($res);
                          echo '</pre>';

                          ca devrait t'afficher tout le contenu de ce que te renvoie ta requete.

                          • Partager sur Facebook
                          • Partager sur Twitter
                            20 août 2006 à 11:38:27

                            SELECT m.id, m.pseudo, m.mail, m.nom, m.prenom, m.parain, SUM(c.amount) AS total FROM membres AS m LEFT JOIN credit AS c ON c.pseudo=m.pseudo WHERE m.pseudo='$pseudo' GROUP BY m.pseudo
                            • Partager sur Facebook
                            • Partager sur Twitter
                              20 août 2006 à 11:40:41

                              Le problème est Similaire et le Prmier Post répond tout à fait bien ;)
                              http://www.webmaster-hub.com/lofiversion/index.php/t20041.html

                              Vérifie ta version de Mysql :p tu dois avori une version > 4.1 pour les sous requetes
                              • Partager sur Facebook
                              • Partager sur Twitter
                                20 août 2006 à 12:01:47

                                Ok et je vais voir ma version de mysql sinon pour cette requête :

                                $req_membres = mysql_query("SELECT m.id, m.pseudo, m.mail, m.nom, m.prenom, m.parain, SUM(c.amount) AS total FROM membres AS m LEFT JOIN credit AS c ON c.pseudo=m.pseudo WHERE m.pseudo='$pseudo' GROUP BY m.pseudo");
                                 


                                Sa ne m'affiche plus page blanche, mais le tableau, mais sans les données à l'intérieur :o:p

                                C ps normal :o
                                • Partager sur Facebook
                                • Partager sur Twitter
                                  20 août 2006 à 12:05:52

                                  C'est déjà une amélioration :D
                                  T'as essayé ma requête avec le code de Yondaime ?
                                  $req = "SELECT m.id, m.pseudo, m.mail, m.nom, m.prenom, m.parain, SUM(c.amount) AS total FROM membres AS m LEFT JOIN credit AS c ON c.pseudo=m.pseudo WHERE m.pseudo='$pseudo' GROUP BY m.pseudo";
                                  $req = myslq_query($req) or die(mysql_error());
                                  echo '<pre>';
                                  while($res = mysql_fetch_assoc($req))
                                    print_r($res);
                                  echo '</pre>';
                                  • Partager sur Facebook
                                  • Partager sur Twitter
                                    20 août 2006 à 12:08:17

                                    A oui j'ai oublier de le noter avant, j'ai essayer avec le code de Yondaime et la sa ne marche plus, page blanche :o

                                    par contre autre truc, quand je rentre la requête :

                                    SELECT m.id, m.pseudo, m.mail, m.nom, m.prenom, m.parain, SUM(c.amount) AS total FROM membres AS m LEFT JOIN credit AS c ON c.pseudo=m.pseudo WHERE m.pseudo='$pseudo' GROUP BY m.pseudo


                                    dans pma, il me dit qu'il na retourné aucun enregistrement :(


                                    Par contre autre point, si je remplace dans la requête précédente, $pseudo par un pseudo d'un de mes membres, il m'affiche bien une ligne dans le tableau avec les infos du membre en question :o C'est donc surment de là que le problème vient :o
                                    • Partager sur Facebook
                                    • Partager sur Twitter
                                      20 août 2006 à 12:22:18

                                      $req = "SELECT m.id, m.pseudo, m.mail, m.nom, m.prenom, m.parain, SUM(c.amount) AS total FROM membres AS m LEFT JOIN credit AS c ON c.pseudo=m.pseudo WHERE m.pseudo='$pseudo' GROUP BY m.pseudo";
                                      $req = mysql_query($req) or die(mysql_error());
                                      echo '<pre>';
                                      while($res = mysql_fetch_assoc($req))
                                        print_r($res);
                                      echo '</pre>';

                                      Ca donne quoi ça ?
                                      Et normal que sous PHPMyAdmin ça donne rien avec $pseudo ^^ , elle est pas définie cette variable, mais surtout sera interprété comme telle (donc il va chercher $pseudo comme pseudo ^^ )
                                      • Partager sur Facebook
                                      • Partager sur Twitter
                                        20 août 2006 à 12:27:50

                                        Sa donne pareil que la première requête, sa affiche les structures du tableau ( plus de page blanche au moins mdr :p ) mais il n'affiche pas les données dans le tableau :o
                                        • Partager sur Facebook
                                        • Partager sur Twitter

                                        AIde pour une petit requête

                                        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                                        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                                        • Editeur
                                        • Markdown