{MySQL} Problème de requête

Résolu/Fermé
webmc Messages postés 23 Date d'inscription samedi 14 juillet 2007 Statut Membre Dernière intervention 13 août 2010 - 17 juin 2009 à 18:51
webmc Messages postés 23 Date d'inscription samedi 14 juillet 2007 Statut Membre Dernière intervention 13 août 2010 - 18 juin 2009 à 20:09
Bonjour,

Au sein d'un CMS, j'ai besoin de coder pour arriver à mes fins... l'idée finale est simple : Afficher les commandes du client loggé.

Avec le code suivant, les commandes existantes de tous les clients s'affichent :

<?php // Gestion des données //

$i=0;

$commande = new Commande(); 
$order = "order by date desc";

$query = "select * from $commande->table where 1 $order limit $debut,11";
$resul = mysql_query($query, $commande->link);

while($row = mysql_fetch_object($resul)){

$venteprod = new Venteprod();
$query2 = "SELECT sum(prixu*quantite) as total FROM $venteprod->table where commande='$row->id'"; 
$resul2 = mysql_query($query2, $venteprod->link);
$total = round(mysql_result($resul2, 0, "total"), 2);

$port = $row->port;
$total -= $row->remise;
$total += $port;

$jour = substr($row->date, 8, 2);
$mois = substr($row->date, 5, 2);
$annee = substr($row->date, 0, 4);

$statutdesc = new Statutdesc();
$statutdesc->charger($row->statut);

?>


Si j'applique :
$query = "select * from $commande->table where client=3 $order limit $debut,11"; 
J'obtiens bien les commandes du client de l'id=3

Le problème est que je ne trouve pas de solutions (je débute) pour que l'id client soit automatique en fonction du client loggé. Voici, ce que j'ai entre autre essayé jusqu'à présent sans succès :

----------
$commande = new Commande();
$client = new Client();
$client->id($row->id);
$query = "select * from $commande->table where client='" . $client->id . "' $order limit $debut,11";

----------
$commande = new Commande();
$client = new Client();
$query = "select * from $commande->table where client='$row->id' $order limit $debut,11";

----------

Si un pro passe par là, merci d'avance ;) !

2 réponses

Godboss Messages postés 69 Date d'inscription lundi 4 février 2008 Statut Membre Dernière intervention 18 juin 2009 18
18 juin 2009 à 00:06
Bonjour,

Si votre utilisateur est loggé, il doit y avoir un moyen de récupérer ses informations. Généralement dans la session. Après je ne sais pas comment vous avez géré votre authentification.
0
webmc Messages postés 23 Date d'inscription samedi 14 juillet 2007 Statut Membre Dernière intervention 13 août 2010 8
18 juin 2009 à 20:09
Bonjour Godboss,

Merci pour ton post car le mot session à fait tilt... :
$client = $_SESSION['navig']->client->id;

$query = "select * from $commande->table where client='" . $client . "' ";
$resul = mysql_query($query, $commande->link);
$num = mysql_num_rows($resul);

Et, ça marche :) !
@+
0