Nombre d'enregistrements entre deux dates

Résolu/Fermé
malipama Messages postés 2 Date d'inscription vendredi 28 octobre 2011 Statut Membre Dernière intervention 30 octobre 2011 - Modifié par malipama le 28/10/2011 à 23:23
malipama Messages postés 2 Date d'inscription vendredi 28 octobre 2011 Statut Membre Dernière intervention 30 octobre 2011 - 30 oct. 2011 à 11:58
Bonjour,

Je suis pas très doué, mais plein de bonne volonté. J'essaie de créer une application web pour gérer des dossiers. J'ai une base SQL "bdd_dossiers" avec une table "dossiers", une table "utilisateurs", et une table "motifs". Chaque dossier est attribué à un utilisateur.
Les champs de la table "dossiers" sont : id_dossiers, nom_utilisateur, date_ouverture_dossier, motif_dossier, etc..

Je cherche une solution (code php) pour compter le nombres de dossiers attribué à un utilisateur dans une période donnée. Entre le XX et le XX, sachant que l'utilisateur doit choisir les dates de la période. (là, je sais pas si je suis clair mais je vois pas comment l'expliquer autrement)....

Je compte sur vous pour m'aider.

Et si, en plus, vous me trouver la solution pour rajouter le critère "motif_dossier" dans ma recherche alors là..............................

Merci d'avance.
A voir également:

2 réponses

moiced59 Messages postés 1145 Date d'inscription samedi 15 novembre 2008 Statut Membre Dernière intervention 18 août 2014 60
29 oct. 2011 à 10:36
Bonjour

Il te faut une requete count du genre :

select count(id_dossiers) as NbreDossier from dossiers where date_ouverture_dossier between XX and XX

Voila
0
malipama Messages postés 2 Date d'inscription vendredi 28 octobre 2011 Statut Membre Dernière intervention 30 octobre 2011
30 oct. 2011 à 11:58
Bonjour,

Merci moiced59.

En partant de ton message, j'ai bossé sur le sujet et je suis arrivé à la solution que je souhaitais.

Je vous mets le code ici pour le cas où ça peut servir à quelqu'un.
N'hésitez pas à critiquer le code si vous voyez des erreurs. Et puis si vous trouvez que c'est pas mal, dites le aussi, ça me fera toujours plaisir !!

...
<form name="form1" method="post" action="" >
<select name="liste1" >

<option value=-1>-- Choisissez -- </option> <br><!-- il faut cette ligne pour avoir obliagtoirement un changement -->
<?php
$connection = mysql_connect('localhost', 'root', '');
$base = mysql_select_db('bdd_dossiers');

$requete = "SELECT nom_utilisateur FROM utilisateurs where nom_utilisateur <> '' ORDER BY nom_utilisateur ";
$execution_requete = mysql_query($requete);
while($total = mysql_fetch_array($execution_requete))

//Liste déroulante

{
echo "<option value=\"".$total["nom_utilisateur"]."\"";
if($liste1==$total['nom_utilisateur']) { echo "selected"; }//ça c'est pour garder la selection lors du réaffichage
echo ">".$total['nom_utilisateur']."</option>\n";
}

?>

</select>
Date de début :<input onclick="ds_sh(this);" name="date_ouverture_dossier" value="<?php echo $_POST['date_ouverture_dossier'];?>" size="8" readonly="readonly" style="cursor: text" />
<?php
$liste2 = $_POST['date_ouverture_dossier'];

?>

</select>
Date de fin : <input onclick="ds_sh(this);" name="date_ouverture_dossier" value="<?php echo $_POST['date_ouverture_dossier'];?>" size="8" readonly="readonly" style="cursor: text" /><br />
<?php

$liste3 = $_POST['date_ouverture_dossier'];

?>
</form></br>
<?php

if($liste1 != -1){ //si on a fait un choix
$query = "SELECT count(*) from dossiers where (nom_utilisateur='".$liste1."') and (date_ouverture_dossier between '".$liste2."' and '".$liste3."')";
$result = mysql_query($query) or die (mysql_error());

$resultat=mysql_fetch_row($result);

echo 'Il y a '; echo $resultat[0]; echo ' dossiers correspondant aux critères de recherche.'; // affichage du résultat
}

?>

<p id="buttons">
<input type="submit" onclick=" form1.submit();" value="valider" />

</p>
...


Merci à toutes et à tous !!!!
0