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 :

Lier deux tables - field not found [ODBC]


Sujet :

PHP & Base de données

  1. #1
    Nouveau membre du Club
    Inscrit en
    Mai 2010
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 36
    Points : 25
    Points
    25
    Par défaut Lier deux tables - field not found
    Bonjour,

    J'essaie de lier 2 tables, du type

    Table 1
    ---------------
    1 | 2010/09/03
    2 | 2010/09/13
    3 | 2010/10/13

    Table 2
    ---------------
    1 | 2010/08/03
    2 | 2010/10/01
    3 | 2010/08/07

    (le but est de les lie par l'index (numero) et de comparer les dates...)
    et j'ai deja fait tout ce qu'il faut 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
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
    $sql="SELECT database.table1.data1, database.table2.data2 
    FROM database.table1 
     
    INNER JOIN database.table2 
    ON database.table1.data1= database.table2.data1 
     
    WHERE database.table2.data2 BETWEEN '2010-01-01' AND '2010-01-10'";
     
    $rs=odbc_exec($conn1,$sql);
     
     
              if (!$rs) {exit("Error in SQL");}
                        $nbcolonne=3;
                        $i=0;
                         $line=array();
     
                      while (odbc_fetch_row($rs)){
                        $r=$i%$nbcolonne;
                        if(!isset($line[$r]))$line[$r]='';
                        $line[$r].='<tr>'.odbc_result($rs, 'database.table1.data1') .'</tr>';
                        $i++;
                        }
    (je suis obligee de preciser la database et la table car je travaille sur deux bases de donnees, et par ailleurs les champs des differentes tables ont souvent le meme nom :S )

    La requete SQL ne plante pas (c'est deja ca)
    Mais j'ai un joli message:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Warning: odbc_result() [function.odbc-result]: Field not found in C:\...\myPage.php on line 105
    Si j'enleve la jointure ca marche sans probleme. J'ai aussi essaye une jointure du type:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     $sql="SELECT database.table1.data1, database.table2.data2 
    FROM database.table1, database.table2 WHERE
    database.table1.data1= database.table2.data1 
    AND database.table2.data2 BETWEEN '2010-01-01' AND '2010-01-10'";
    Mais la aussi ce fut sans succes...

    J'ai deja verifie les resultats de la requete avec un Crystal Report (je devrais recuperer 167 enregistrements >.< )... j'ai aussi verifie la jointure, ca correspond bien.

    Alors pourquoiiiiiii?
    Cela veut il dire que ma requete ne donne aucun resultat??
    Help

  2. #2
    Nouveau membre du Club
    Inscrit en
    Mai 2010
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 36
    Points : 25
    Points
    25
    Par défaut
    Desoleee
    Je poste beaucoup de messages pour juste fermer apres ces temps ci :S
    J'ai la solution:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $sql="SELECT database.table1.data1 As blabla1, database.table2.data2 As  blabla2 FROM database.table1 
     
    INNER JOIN database.table2 
    ON database.table1.data1= database.table2.data1 
     
    WHERE database.table2.data2 BETWEEN '2010-01-01' AND '2010-01-10'";
    Quand on a deux champs du meme nom il faut les renommer pour pouvoir ensuite faire

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $line[$r].='<tr>'.odbc_result($rs, 'blabla1') .'</tr>';
    car le database.table1.data1 ne passe pas avec le odbc_result
    Youhouuuu!

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

Discussions similaires

  1. [DEB] lier deux tables par un NumAuto
    Par ip203 dans le forum Access
    Réponses: 17
    Dernier message: 07/06/2006, 15h06
  2. Problème pour lier deux tables
    Par balabonov dans le forum Access
    Réponses: 8
    Dernier message: 21/12/2005, 13h13
  3. Comment lier deux tables (0-1;1-1) ?
    Par tsing dans le forum Décisions SGBD
    Réponses: 3
    Dernier message: 22/02/2005, 13h36
  4. lier deux tables a partir dun calcul!!
    Par marie10 dans le forum Langage SQL
    Réponses: 5
    Dernier message: 20/04/2004, 09h44
  5. comment lier deux tables?????
    Par baboune dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 16/03/2004, 14h45

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