bubbledesavon
Messages postés66Date d'inscriptionsamedi 21 février 2004StatutMembreDernière intervention 6 mars 2015
-
14 nov. 2007 à 14:54
bubbledesavon
Messages postés66Date d'inscriptionsamedi 21 février 2004StatutMembreDernière intervention 6 mars 2015
-
14 nov. 2007 à 16:38
bonjour,voici mon souci ,
ja i cree un petit moteur de recherche par date,qui fonctione tres bien ,mais ou ,dans le resultat , j aimerais y ajouter une colonne d une autre table.
je m explique avec le code:
j ai deux table
une premiere "tablemo" qui contient "idtablemo,idintervention,datemo,techmo,nbrehmo"
une deuxieme "inter" qui contient "idintervention,techinter,lieuinter,clientinter"
////////////////////////le code du moteur de recherche sur les date de la table : tablemo////////////////
$requete1=1er date
$requete2=2eme date
<?
//connection bd
$query = mysql_query("SELECT * FROM tablemo WHERE datemo BETWEEN '$requete1' AND '$requete2'") or die (mysql_error());
while($donnees = mysql_fetch_array($query))
{
?>
["><? echo $donnees['datemo'];
?>
}
/////////////////////////////////////////////
qui me donne comme resultat:
une liste de date entre les date requete1 et la requete 2
ex:
12/12/2007
11/05/2008
05/05/2008
j'aimerais y ajouter le nom du client "clientinter" a la suite de ces dates:
ex:
12/12/2007 client 1
11/05/2008 client 8
05/05/2008 client 14
voici ce que j avais rajouté
////////////////////////le code du moteur de recherche sur les date de la table : tablemo////////////////
$requete1=1er date
$requete2=2eme date
<?
//connection bd
$query = mysql_query("SELECT * FROM tablemo WHERE datemo BETWEEN '$requete1' AND '$requete2'") or die (mysql_error());
while($donnees = mysql_fetch_array($query))
{
?>
["><? echo $donnees['datemo'];
$reqclient=mysql_query("select * from inter,tablemo where inter.idintervention=tablemo.idintervention");
$donneesclient=mysql_fetch_array($reqclient);
echo $donneesclient['clientinter'];
?>
}
mais voila ca ne marche pas ,
a cote des dates , j ai toujours le nom du premier client de la table "inter".
ex:
12/12/2007 client1
11/05/2008 client1
05/05/2008 client1
je vous crie a l aide , et merci d avance pour vos reponses.
cs_AlexN
Messages postés694Date d'inscriptionlundi 5 décembre 2005StatutMembreDernière intervention 8 janvier 201419 14 nov. 2007 à 15:47
pas besoin de deux requetes, essayes quelquechose comme (à la louche...) :
select datemo, clientinter from tablemo join inter on idinterventionwhere datemo between '$requete1' AND '$requete2'"
bubbledesavon
Messages postés66Date d'inscriptionsamedi 21 février 2004StatutMembreDernière intervention 6 mars 2015 14 nov. 2007 à 15:58
salut alexN,
voici l essai rapide que je viens de faire :
erreur
column " idintervention" in on clause is ambigous
code modifié:
$query = mysql_query("SELECT datemo,clientinter FROM tablemo join inter on idintervention WHERE datemo BETWEEN '$requete1' AND '$requete2'") or die (mysql_error());
while($donnees = mysql_fetch_array($query))
{
["><? echo $donnees['datemo'];?>--<? echo $donnees['clientinter'];?>
?>
}
bubbledesavon
Messages postés66Date d'inscriptionsamedi 21 février 2004StatutMembreDernière intervention 6 mars 2015 14 nov. 2007 à 16:09
je vien de modifier la syntaxe
c'est ok
$query = mysql_query("SELECT datemo,clientinter FROM tablemo JOIN inter ON inter.idintervention=tablemo.idintervention WHERE datemo BETWEEN '$requete1' AND '$requete2'") or die (mysql_error());
sauf que maintenant mon "echo $donees['idintervention'];" ne me donne plus rien
bubbledesavon
Messages postés66Date d'inscriptionsamedi 21 février 2004StatutMembreDernière intervention 6 mars 2015 14 nov. 2007 à 16:38
Bon voila j ai reussi ,
au lieu du "join" j ai mis "inner join"
a la place de la selection selective :) "select datemo,clientinter......" j ai remplcer par "select * ...."
et cela fonctionne a merveille
je met le code rectifié pour une personne qui est dans la meme panade.
/////////////////
$query = mysql_query("SELECT * FROM tablemo INNER JOIN inter ON inter.idintervention= tablemo.idintervention WHERE datemo BETWEEN '$requete1' AND '$requete2'") or die (mysql_error());
while($donnees = mysql_fetch_array($query))
{
["><? echo $donnees['datemo'];?>--<? echo $donnees['clientinter'];?>
?>
}
AlexN je te met la reponse accepté car tu ma bien mis sur la voie pour la jointure.
merci encore.