Riskbreaker
Utilisateur open source-
Compteur de contenus
31 -
Inscrit(e) le
-
Dernière visite
Tout ce qui a été posté par Riskbreaker
-
Riskbreaker a ajouté un message dans un sujet Création d'une page "Meilleures Ventes"
Ben je n'arrive pas à créer une seconde requête qui recoupe la première... Dans ma tête un LEFT JOIN était plus clair. Après je peux évidement me tromper, et d'ailleurs c'est ce que j'ai fait ! :)
En tout cas, ca ne marche pas puisqu'il me renvoit cette erreur, à chaque fois :
"Erreur SQL !
SELECT oi.count (*) as count , p.id , p.nom , p.prix FROM peel_commandes_articles oi LEFT JOIN peel_produits p ON (oi.produit_id = p.id) GROUP BY oi.produit_id ORDER BY count DESC LIMIT 10
You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near '(*) as count , p.id , p.nom"
-
0
-
-
Riskbreaker a ajouté un message dans un sujet Création d'une page "Meilleures Ventes"
Sur ce que j'ai expliqué juste au dessus de ton post :)
Sur la requête SQL pour afficher les meilleures ventes... J'ai tenté d'en faire une à partir de ce que Willy m'a indiqué, mais erreur de syntaxe, et mon niveau est bien trop bas pour me dépatouiller tout seul.
Voilà la requête :
$sql = "SELECT oi.count (*) as count , p.id , p.millesime , p.nom , p.prix , p.couleur FROM peel_commandes_articles oi LEFT JOIN peel_produits p ON (oi.produit_id = p.id) GROUP BY produit_id ORDER BY count DESC LIMIT 10"; $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
-
0
-
-
Riskbreaker a ajouté un message dans un sujet Création d'une page "Meilleures Ventes"
Oui, comme je travaille sur Shopping, le template n'est pas présent et c'est pourquoi, ne pouvant pas appliquer la solution de noya_m, j'ai tenté de la faire à ma sauce...
Et je bloque.
-
0
-
-
Riskbreaker a ajouté un message dans un sujet Création d'une page "Meilleures Ventes"
Bonjour,
Je reviens à la charge avec cette page !
J'ai tenté moult fois de réussir à formuler la bonne requête SQL en vain. Je pensais avec ce que vous m'avez donné Willy, pouvoir faire une seule et même requête avec LEFT JOIN... Mais je me trompe sans cesse dans la syntaxe.
Pouvez vous m'aider à corriger ce ptit bout de code ?
Le voici :
$sql = "SELECT oi.count (*) as count , p.id , p.millesime , p.nom , p.prix , p.couleur FROM peel_commandes_articles oi LEFT JOIN peel_produits p ON (oi.produit_id = p.id) GROUP BY produit_id ORDER BY count DESC LIMIT 10"; $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error()); //Début de boucle while( $sortie = mysql_fetch_array($req)) { //Affichage de chaque ligne pour chaque produit echo "<tr bgcolor='"; if($o==1) { echo "#ECECEC"; $o++; } else { echo "#FFFFFF"; $o=1; } echo "'> <th class=\"catalogue\">$sortie[millesime]</th> <th class=\"catalogue\"><font color=#993333><b>"; ?> <a href="<?echo $wwwroot?>/achat/produit_details.php?id=<?=$sortie['id'] ?>&catid=<?=$catid?>"><?echo stripslashes($sortie['nom']) ?> <? echo "</a></b></font></th> <th class=\"catalogue\">$sortie[aoc]</th> <th class=\"catalogue\"><b>$sortie[couleur]</th> <th class=\"catalogue\">$sortie[prix] €</th> </tr>"; }
Le problème est donc dans la requête, qui est archi fausse....
-
0
-
-
Riskbreaker a ajouté un message dans un sujet Création d'une page "Meilleures Ventes"
Merci pour cette réponse extrêmement rapide Willy :)
C'est exactement ce que je cherchais. Je n'ai plus qu'à l'adapter à ma page !
Merci encore
-
0
-
-
Riskbreaker a ajouté un sujet dans PEEL SHOPPING : logiciel open source de boutique en ligne
Création d'une page "Meilleures Ventes"Bonjour,
Je découvre Peel Shopping et trouve le module vraiment excellent. Seulement maintenant, j'aimerais créer une page "Meilleures Ventes" qui affichera les produits les plus vendus.
Seul problème je ne vois pas trop comment m'y prendre...
J'aimerais me baser sur le table "peel_commandes_articles" et que php me retourne par ordre décroissant les 10 produits les plus vendus.
Je pense qu'il faudrait dire à SQL de comptabiliser toutes les occurences du champ "produit_id" et de les classer par DESC... Mais comment ?
Je n'ai vraiment pas assez de connaissances en SQL pour trouver la ligne de code adéquate... :)
Ce serait un truc du style :
$sql = "SELECT (je ne sais pas :/) FROM peel_commandes_produits ORDER BY (je ne sais pas :/) DESC LIMIT 10"; $req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
Je pensais aussi à integrer des variables pour compter, mais je bloque...Je bloque énormément...
Quelqu'un peut-il m'aider s'il arrive à comprendre mon problème ? Merci d'avance !
Bonne journée !
- 50 réponses
- 15 742 vues