Je rentre des données dans un formulaire ( la dateDebut,fin, le nomclient et la catégorie)
Et en fonction de ce que l'utilisateur a rentré alors il y a une fiche correspondant à tout les éléments qu'ils demandent .
Par exemple s'il souhaite connaitre les clients de a et la categorie C entre 2010 et 2020 alors il aura tout ce qui correspond à cela.
Cependant, le fait de saisir une catégorie est facultative.
C'est -à-dire que s'il souhaite connaitre tout les clients de a entre 2010 et 2020 sans mettre de categorie alors il aura tout les clients de a avec toutes les categories entre 2010 et 2020.
C'est ce que je souhaiterais faire.
$query="SELECT sum(prixFacture) as prix3 ,C.id,C.nom,C.cat, C.organisme,C.adresse,C.objetMarche,C.start from client as C where nom = '$nom' and cat='$cat' or nom='$nom' and start between '$dateDebut' and '$dateFin'";
$resultats=$db->query($query);
J'ai donc mis ça comme code qui correspondrait à ce que je voudrais mais cela ne marche pas. Si je mets un nom et une catégorie alors j'ai quand même tout les noms des clients avec toute leur categorie( qui correspond pas uniquement à celle que j'ai demandé).
J'ai essayé de faire comme ceci mais le problème cette fois ci est qu'il ne prend pas en compte la catégorie même quand elle est rentré par l'utilisateur :
if(empty($_POST['$cat']) ){
$query="SELECT sum(prixFacture) as prix3 ,C.id,C.nom,C.cat, C.organisme,C.adresse,C.objetMarche,C.start from client as C where ( nom = '$nom' ) and start between '$dateDebut' and '$dateFin' ";
$query2="SELECT (prixFacture) as prix2 ,C.id,C.nom,C.cat, C.organisme,C.adresse,C.objetMarche,C.start from client as C where ( nom = '$nom' ) and start between '$dateDebut' and '$dateFin' ";}
elseif(!empty($_POST['$cat'])){
$query="SELECT sum(prixFacture) as prix3 ,C.id,C.nom,C.cat, C.organisme,C.adresse,C.objetMarche,C.start from client as C where ( nom = '$nom' and cat='$cat' ) and start between '$dateDebut' and '$dateFin' ";
$query2="SELECT (prixFacture) as prix2 ,C.id,C.nom,C.cat, C.organisme,C.adresse,C.objetMarche,C.start from client as C where ( nom = '$nom' and cat='$cat') and start between '$dateDebut' and '$dateFin' ";}
$resultats=$db->query($query);
$resultats2=$db->query($query2);
Pour faire simple, le PHP n'est pas interprété entre de simples quotes ('), par conséquent c'est comme si tu voulais récupérer l'index $cat au lieu de cat dans le tableau, donc pour lui c'est une simple chaîne de caractères.
- Edité par Lartak 17 mai 2019 à 15:48:16
Face a quelqu'un pour qui l'on n'éprouve que de l'aversion et du mépris, les yeux d'un homme deviennent extrêmement froids et cruels.
Je reviens vers vous afin de vous remercier car en effet cela marche après avoir enlevé le $
Merci beaucoup
requête par rapportà un formulaire en php
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
N'oubliez pas d'activer les erreurs PDO.
N'oubliez pas d'activer les erreurs PDO.
N'oubliez pas d'activer les erreurs PDO.
Face a quelqu'un pour qui l'on n'éprouve que de l'aversion et du mépris, les yeux d'un homme deviennent extrêmement froids et cruels.