payetonju
Messages postés436Date d'inscriptionmercredi 26 septembre 2007StatutMembreDernière intervention 2 juillet 2014
-
2 févr. 2009 à 16:12
payetonju
Messages postés436Date d'inscriptionmercredi 26 septembre 2007StatutMembreDernière intervention 2 juillet 2014
-
3 févr. 2009 à 13:57
Bonjour, j'ai un petit souci sur un de mes programmes en PHP.
Je voudrais créer un espace perso pour les clients, sur un site web, où il y aurait une page de l'historique des commandes.
Donc le but est d'afficher toutes les commandes avec les informations concernant ces commandes, les unes en dessous des autres (par la mise en forme dans un tableau HTML je me débrouille)
Donc jusque là pas de problemes, il affiche bien toutes informations. Mais mon souci est que ma colonne de reference de recherche est le login. d'avoir "NUMCMD" m'aurais arangé pour faire mes liaisons entre me différentes table
Docn dans l'idéal j'aurais bien vu un truc du genre :
$sql="select NUMCMD,TOTAL_TTC,ETAT,DATE from commande WHERE LOGIN = '".$_SESSION['login']."'";
$res=ODBC_exec($connect,$sql);
$sql="select DESIGNATION,NB_ARTICLES from commande_details WHERE NUMCMD = '".$_SESSION['numcmd']."'";
$res=ODBC_exec($connect,$sql);
while (odbc_fetch_row($res))
{
$numcmd=trim(ODBC_result($res,"NUMCMD"));
$nb_articles=trim(ODBC_result($res,"NB_ARTICLES"));
$designation=trim(ODBC_result($res,"DESIGNATION"));
$total_ttc=trim(ODBC_result($res,"TOTAL_TTC"));
$etat=trim(ODBC_result($res,"ETAT"));
$reglement=trim(ODBC_result($res,"REGLEMENT"));
$date = trim(ODBC_result($res,"DATE"));
$date = substr($date,8,2)."/".substr($date,5,2)."/".substr($date,0,4)." ".substr($date,11,8);
echo $numcmd." - ".$total_ttc." - ".$etat." - ".$reglement." - ".$date." - ".$designation." - ".$nb_articles."
";
}
Mais evidemment, ça ne marche pas ! soit ça me met rien, soit àa me met que la derniere ligne.
SVP aidez moi merci
A voir également:
Afficher toutes les lignes d'une colonne d'une BDD + infos relatives à 1 ligne
krolenain
Messages postés149Date d'inscriptionlundi 7 février 2005StatutMembreDernière intervention 6 février 20091 2 févr. 2009 à 16:23
Salut,
fais tout ca en une seule requete avec une jointure:
SELECT commande.NUMCMD,TOTAL_TTC,ETAT,DATE, DESIGNATION,NB_ARTICLES
From commande, commande_details
WHERE LOGIN = '".$_SESSION['login']."'
AND c.NUMCMD = '".$_SESSION['numcmd']."'
AND commande.numcmd = commande_details.numcmd
krolenain
Messages postés149Date d'inscriptionlundi 7 février 2005StatutMembreDernière intervention 6 février 20091 3 févr. 2009 à 13:23
re,
t'as quand meme fait ton WoW pepere on dirait
2 choses, fait un echo te ton $sql et essaie ta requete dans phpmyadmin direct.
Sinon essaie plutot odbc_fetch_array au lieu de row
payetonju
Messages postés436Date d'inscriptionmercredi 26 septembre 2007StatutMembreDernière intervention 2 juillet 20144 2 févr. 2009 à 16:41
Hello !
Merci pour ton POST.
Alors, avant de tester, je dois bien comprendre ce que tu m'as écris, mais il y a plusieurs choses qui m'interpellent.
Déjà je ne savais pas qu'on pouvait faire une requete avec plusieurs tables. cela va faciliter mon code.
Et si je décompose bien la requete :
From commande, commande_details
WHERE LOGIN = '".$_SESSION['login']."'
AND c.NUMCMD = '".$_SESSION['numcmd']."'AND commande.numcmd commande_details.numcmd On séléctionne NUMCMD, TOTAL_TTC, ETAT, DESIGNATION et NB_ARTICLES depuis "commandes" et "commandes_details" où le login login_SESSION et où NUMCMD NUMCMD_SESSION et où NUMCMD=NUMCMD.
Alors quand tu fais "commande.NUMCMD" et "c.NUMCMD" ça veut dire quoi ?
payetonju
Messages postés436Date d'inscriptionmercredi 26 septembre 2007StatutMembreDernière intervention 2 juillet 20144 2 févr. 2009 à 17:01
Ok merci beaucoup pour ta réponse très réactive, c'est super cool :) je vais pouvoir retourner sur wow pépére ce soir car t'as débloqué ma situation :) loool @++
payetonju
Messages postés436Date d'inscriptionmercredi 26 septembre 2007StatutMembreDernière intervention 2 juillet 20144 3 févr. 2009 à 13:57
nan en fait je n'ai pas eu le temps, je ferais mon raid ce soir :oP tu y joues toi ?
C'est bon j'ai trouvé, c'est ma faute j'ai oublié une chose importante que tu m'avais écrite
commande.numcmd = commande_details.numcmd
Et voilà le tour est joué. Merci beaucoup !!!