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 :

Récupération des données


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Janvier 2012
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 33
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Janvier 2012
    Messages : 56
    Points : 42
    Points
    42
    Par défaut Récupération des données
    Je veux récupérer les valeurs de trois attributs à partir de trois tables différentes: puis garder ces valeurs dans des variables pour les comparer avec une valeur saisie par le user.

    Commençant par la récupération, voici mon code qui récupère une seule valeur puisque j'ai pas trouvé une façon pour récupéré les trois dans une même requête! :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <?php
    include("connexion.php");
     
              $req = 'select temperature
                       from `rougeole`
                       where temperature="'.$temperature.'" ';
              $idreq = mysql_query($req)or die('Erreur SQL !'.$req.'<br />'.mysql_error());
     
    include("connexion.php");
            while ($row = mysql_fetch_array($idreq)){
            $temperaturerougeole=$row['temperature'];
            echo $row['temperature'];}
     
    ?>
    L'erreur affichée: Le navigateur me retourne toute la requête e non pas le résultat.

    Deuxièment:

    Comment je fais pour réaliser le test de comparaison entre ces données récupérées et celle saisie par le user (sachant que je veux garder la similaire) ?

    Merci pour vos "orientations"

  2. #2
    Invité
    Invité(e)
    Par défaut
    Pourquoi réaffiches-tu la connection
    D'autre part en mettant xxx yyy pour le login, peux tu nous afficher connexion.php

    Merci d'avance
    Christele

  3. #3
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Janvier 2012
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 33
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Janvier 2012
    Messages : 56
    Points : 42
    Points
    42
    Par défaut
    Connexion.php:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <?php 
     $idconnect= mysql_connect("localhost", "root", "") or die("Pb de connexion");
     mysql_select_db('tpcbr') or die("echec de connexion a la base de données");
    ?>
    pour établir une connexion avec la BDD??

  4. #4
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 103
    Points : 115
    Points
    115
    Par défaut
    Inutile de mentionner plusieurs fois dans le même script PHP l'instruction include si c'est le même fichier PHP qui est inclus.

    Pour la commande mysql_query, il y a deux paramètres il me semble et non un seul comme ici.

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <?php
              include "connexion.php";
     
              $req = "SELECT temperature FROM `rougeole` WHERE temperature = '".$temperature."'";
              $idreq = mysql_query($idconnect, $req) or die('Erreur SQL !'.$req.'<br />'.mysql_error());
     
            while ($row = mysql_fetch_row($idreq)){
            $temperaturerougeole = $row[0];
            echo $temperaturerougeole;
            }
     
    ?>

  5. #5
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Janvier 2012
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 33
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Janvier 2012
    Messages : 56
    Points : 42
    Points
    42
    Par défaut
    Non mysql_query prend un seul paramètre, en tout j'ai essayé ton code, il me dit comme quoi l'erreur existe sur cette ligne:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $idreq = mysql_query($idconnect, $req) or die('Erreur SQL !'.$req.'<br />'.mysql_error());
    ..alors...

  6. #6
    Membre expert Avatar de Fench
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Mai 2002
    Messages
    2 353
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Groenland

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 353
    Points : 3 390
    Points
    3 390
    Par défaut
    Bonjour,

    Si $temperature est numérique tu peux faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    <?php
    include("connexion.php");
     
              $req = "select temperature
                       from rougeole
                       where temperature=$temperature";
              $idreq = mysql_query($req)or die('Erreur SQL !'.$req.'<br />'.mysql_error());
     
            while ($row = mysql_fetch_array($idreq)){
            $temperaturerougeole=$row['temperature'];
            echo $row['temperature'];}
     
    ?>
    Question: pourquoi récupérer la température à partir d'une température ?

    Sinon si pas numérique
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    $req = "select temperature
                       from rougeole
                       where temperature='".$temperature."'";
    Meuuh en AI à l'INRA
    Domaines: {java, php, js, jquery}{hibernate, doctrine}{MyLib, symfony, Zend}
    fait gagner du temps à ceux qui aident , donc un message avec la balise résolu laisse plus de temps pour résoudre d'autres problèmes (balise à cliquer en bas de l'écran)

  7. #7
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 103
    Points : 115
    Points
    115
    Par défaut
    Autant pour moi, c'est mysqli_query qui prend 2 paramètres et non pas mysql_query. Mais je maintiens ce que j'ai dis sur l'instruction "include"

    Petite question : comment est initialisé $temperature dans ton code ?

  8. #8
    Membre expert Avatar de Fench
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Mai 2002
    Messages
    2 353
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Groenland

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 353
    Points : 3 390
    Points
    3 390
    Par défaut
    Et puis pour tous, ...

    Remplacer l'API mysql par mysqli ou par Pdo, cette dernière va disparaitre !
    Meuuh en AI à l'INRA
    Domaines: {java, php, js, jquery}{hibernate, doctrine}{MyLib, symfony, Zend}
    fait gagner du temps à ceux qui aident , donc un message avec la balise résolu laisse plus de temps pour résoudre d'autres problèmes (balise à cliquer en bas de l'écran)

  9. #9
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Janvier 2012
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 33
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Janvier 2012
    Messages : 56
    Points : 42
    Points
    42
    Par défaut
    Bon j'ai pensé à récupérer séparément les trois valeurs, puis les conserver dans des variables pour les utiliser dans le test.

    Donc voici le code que j'ai fait, il fonctionne bien et m'affiche la valeur correcte de la base:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    include "connexion.php";
     
            $req = "SELECT temperature FROM `rougeole`";
            $idreq = mysql_query($req) or die('Erreur SQL !'.$req.'<br />'.mysql_error());
     
         while ($row = mysql_fetch_row($idreq))
    	{
           $temperaturerougeole = $row[0];
    	  echo 'voici la temp de la rougeole'; echo $temperaturerougeole;
        }
    J'ai fait la même chose pour récupérer les deux autres valeurs, comme suit:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    include "connexion.php";
     
            $req1 = "SELECT temperature FROM `anime`";
            $idreq1 = mysql_query($req) or die('Erreur SQL !'.$req.'<br />'.mysql_error());
    		while ($row = mysql_fetch_row($idreq1))
    	{
           $temperatureanime = $row[0];
            echo 'voici la temp de lanime'; echo $temperatureanime;
        }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    include "connexion.php";
     
            $req2 = "SELECT temperature FROM `grippe`";
            $idreq2 = mysql_query($req) or die('Erreur SQL !'.$req2.'<br />'.mysql_error());
    		while ($row = mysql_fetch_row($idreq2))
    	{
           $temperaturegrippe = $row[0];
            echo 'voici la temp de la grippe'; echo $temperaturegrippe ;
        }
    Problème : ça m'affiche les valeurs de la la première requête (c'est à dire : temperaturerougeole!!)

  10. #10
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 103
    Points : 115
    Points
    115
    Par défaut
    Normal :

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $req = "SELECT temperature FROM `rougeole`";
    $idreq = mysql_query($req) or die('Erreur SQL !'.$req.'<br />'.mysql_error());
    $req1 = "SELECT temperature FROM `anime`";
    $idreq1 = mysql_query($req) or die('Erreur SQL !'.$req.'<br />'.mysql_error());
    $req2 = "SELECT temperature FROM `grippe`";
    $idreq2 = mysql_query($req) or die('Erreur SQL !'.$req2.'<br />'.mysql_error());

    Dans le paramètre de mysql_query, il n'y a QUE $req et pas $req1 ni $req2 ce qui veut dire que tu exécutes trois fois $req donc la première requête.

    Ce serait bien si on pouvait connaître les tables de ta base de données, qu'on puisse savoir comment procéder pour récupérer les informations voulues.

    Petite précision, histoire d'économiser une ligne de code, tu peux concaténer la dernière ligne :

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    echo "Temperature de la rougeole : ".$temperaturerougeole;

  11. #11
    Membre éprouvé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2009
    Messages
    736
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2009
    Messages : 736
    Points : 1 101
    Points
    1 101
    Par défaut
    Combien de ligne t'a dans la table rougeole par exemple. et combien y sera
    A la recherche d'un film : http://chercher-un-film.com

  12. #12
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Janvier 2012
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 33
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Janvier 2012
    Messages : 56
    Points : 42
    Points
    42
    Par défaut
    @Gannox: Tes requêtes ne marchent pas...

    La base contient 4 tables en tout:
    une dans laquelle je sauvegarde les valeurs saisies par le user;
    les trois: rougeole, grippe, animé contiennent tous les mêmes attributs (10 attributs par table), dont je veux en premier récupérer que la température à partir de chacune.
    j'ai réussi grâce à ce code à récupérer (temperature.rougeole) la sauvegarder dans une variable; mais ça marche pas avec les autres tables!!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    include "connexion.php";
            $req1 = "SELECT temperature FROM `anime`";
            $idreq1 = mysql_query($req) or die('Erreur SQL !'.$req.'<br />'.mysql_error());
    		while ($row = mysql_fetch_row($idreq1))
    	{
           $temperatureanime = $row[0];
            echo "Temperature de la anime : ".$temperatureanime;
        }
    J'epère que c'est assez clair...

  13. #13
    Membre éprouvé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2009
    Messages
    736
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2009
    Messages : 736
    Points : 1 101
    Points
    1 101
    Par défaut
    ce que je vois dans ton code c'est que la variable $temperatureanime sera ecrasé plusieur fois dans la boucle while et ne contiendra que la dernier valeur de ta table.
    A la recherche d'un film : http://chercher-un-film.com

  14. #14
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Janvier 2012
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 33
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Janvier 2012
    Messages : 56
    Points : 42
    Points
    42
    Par défaut
    Comment je la corrige alors

  15. #15
    Membre éprouvé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2009
    Messages
    736
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2009
    Messages : 736
    Points : 1 101
    Points
    1 101
    Par défaut
    quel valeur tu dois récupérer de ta table.
    si c'est la premier valeur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $req1 = "SELECT temperature FROM `anime`";
    $idreq1 = mysql_query($req) or die('Erreur SQL !'.$req.'<br />'.mysql_error());
    $row = mysql_fetch_row($idreq1);
    $temperatureanime = $row[0];
    echo "Temperature de la anime : ".$temperatureanime;
    Si c'est une autre valeur tu dois ajouter le Where dans ta requête
    A la recherche d'un film : http://chercher-un-film.com

  16. #16
    Membre éprouvé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2009
    Messages
    736
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2009
    Messages : 736
    Points : 1 101
    Points
    1 101
    Par défaut
    et je vois que contient la variable il doit contenir
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $idreq1 = mysql_query($req1) or die('Erreur SQL !'.$req1.'<br />'.mysql_error());
    A la recherche d'un film : http://chercher-un-film.com

  17. #17
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Janvier 2012
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 33
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Janvier 2012
    Messages : 56
    Points : 42
    Points
    42
    Par défaut
    Je n'ai pas à ajouter des Where puisque les reqeutes sont indépendantes l'une de l'autre!!!

    Le problème que je ne comprends pas c'est comment récupérer les autres valeurs dans d'autres variables!

  18. #18
    Membre éprouvé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2009
    Messages
    736
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2009
    Messages : 736
    Points : 1 101
    Points
    1 101
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    include "connexion.php";
     
            $req1 = "SELECT temperature FROM `anime`";
            $idreq1 = mysql_query($req1) or die('Erreur SQL !'.$req1.'<br />'.mysql_error());
    		while ($row = mysql_fetch_row($idreq1))
    	{
           $temperatureanime = $row[0];
            echo 'voici la temp de lanime'; echo $temperatureanime;
        }
    Modification de $req en $req1

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    include "connexion.php";
     
            $req2 = "SELECT temperature FROM `grippe`";
            $idreq2 = mysql_query($req2) or die('Erreur SQL !'.$req2.'<br />'.mysql_error());
    		while ($row = mysql_fetch_row($idreq2))
    	{
           $temperaturegrippe = $row[0];
            echo 'voici la temp de la grippe'; echo $temperaturegrippe ;
        }
    modificationde $req en $req2
    A la recherche d'un film : http://chercher-un-film.com

  19. #19
    Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Janvier 2012
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 33
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Janvier 2012
    Messages : 56
    Points : 42
    Points
    42
    Par défaut
    Perfect

    Bein surement que j'ai une erreur quelque part..

    Merci infiniment


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

Discussions similaires

  1. Récupération des données d'un formulaire
    Par placenargac dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 04/02/2006, 15h10
  2. récupération des données via une liste déroulante
    Par rahan_dave dans le forum Access
    Réponses: 1
    Dernier message: 13/10/2005, 12h27
  3. [HTML][FORMULAIRE] Probleme dans la récupération des données
    Par baddounet dans le forum Balisage (X)HTML et validation W3C
    Réponses: 6
    Dernier message: 15/08/2005, 18h51
  4. Réponses: 2
    Dernier message: 20/02/2004, 08h47
  5. Réponses: 13
    Dernier message: 20/03/2003, 08h11

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