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:
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:
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:
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...:cry:
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 :calim2: