IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

fonction recherche avec deux dates et classer les resultats par mois

  1. waritigui
    waritigui
    bonjour Imikado une fois de plus je me retourne vers vous pour m'aider a réglé un problème j'ai un e fonction recherche avec deux date et j'aimerais afficher les résultats par mois et faire une somme de ce que jai calculer comme bilan de la periode pour être plus explicite je vous envoie le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    <form class="form-horizontal" action="" method="POST" class="table table-bordered">
     
    la vue recherche
    
      <script>
      $(function() {
        $( "#from" ).datepicker({
    		dateFormat: "yy-mm-dd",
          defaultDate: "+1w",
          changeMonth: true,
    	  changeYear: true,
          numberOfMonths: 1,
      language:"fr",
          onClose: function( selectedDate ) {
            $( "#to" ).datepicker( "option", "minDate", selectedDate );
          }
        });
        $( "#to" ).datepicker({
    		dateFormat: "yy-mm-dd",
          defaultDate: "+1w",
          changeMonth: true,
    	  changeYear: true,
          numberOfMonths: 1,
      language:"fr",
          onClose: function( selectedDate ) {
            $( "#from" ).datepicker( "option", "maxDate", selectedDate );
          }
        });
      });
      </script>
     
    
    <div class="form-group">
    		<label class="col-sm-5 control-label" for="from" >Date d'entr&eacute;e :</label>
    		<div class="col-sm-3"><input type="text" id="from" name="month1" class="form-control"></div>
    	</div>
    
    
    
    
    <div class="form-group">
    		<label class="col-sm-5 control-label" for="to" >Date  de sortie :</label>
    		<div class="col-sm-3"><input type="text" id="to" name="month2" class="form-control"></div>
    	</div>
    
    <a class="btn btn-default" href="<?php echo $this->getLink('mensuelafd::evolution')?>">BILAN DE L'EVOLUTION</a>
    <a class="btn btn-default" href="<?php echo $this->getLink('mensuelafd::niveauafd')?>"/>BILAN DE NIVEAU DE FAMILLES<a/>
    <a class="btn btn-default" href="<?php echo $this->getLink('mensuelafd::afdaupresdefamilles')?>"/>AFD AU PRES DES FAMILLES<a/>
    <a class="btn btn-default" href="<?php echo $this->getLink('mensuelafd::list')?>">Retour</a>
    </form>



    le module

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    public function _recherche() {
    			 
    			 $oView=new _view('mensuelafd::recherche');
    			$this->oLayout->add('main',$oView);
     
    		}		
    		
    		
    			public function _evolution(){
    			
    			$tinfos=null;
    			if(_root::getParam('month1') and _root::getParam('month2')){
    			$tinfos=model_mensuelafd::getInstance()->findBYmois(_root::getParam('month1'),_root::getParam('month2') );
    			$oView=new _view('mensuelafd::evolution');
    			
    			$oView->tinfos=$tinfos;
    			plugin_debug::addSpy('tableau de resultats',$tinfos);
    			$this->oLayout->add('main',$oView);}
    			
    			}
    et pour finir la requête dans le model
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    public function findBYmois($month1,$month2){
    		return $this->findMany('SELECT sum(mensuelafd.enqueteseffectue) as enqueteseffectue,sum(mensuelafd.enquetesprevue) as enquetesprevue,sum(mensuelafd.enqueteencours) as enqueteencours,sum(mensuelafd.famillecz) as famillecz,sum(mensuelafd.accepteafd) as accepteafd,sum(mensuelafd.refuseafd) as refuseafd,sum(mensuelafd.reprisemec) as reprisemec,sum(mensuelafd.vadsuivie) as vadsuivie,sum(mensuelafd.vadferme) as vadferme,sum(mensuelafd.vadsortie) as vadsortie,sum(mensuelafd.totalvad) as totalvad,sum(mensuelafd.plusplus) as plusplus,sum(mensuelafd.plus) as plus,sum(mensuelafd.egaleplus) as egaleplus,sum(mensuelafd.egale) as egale,sum(mensuelafd.totalanalysable) as totalanalysable,sum(mensuelafd.mecmoins) as mecmoins,sum(mensuelafd.autrena) as autrena,sum(mensuelafd.totalna) as totalna,sum(mensuelafd.totalsortie) as totalsortie,sum(mensuelafd.precedentsuivie) as precedentsuivie,sum(mensuelafd.entredumois) as entredumois,sum(mensuelafd.sortiedumois) as sortiedumois,sum(mensuelafd.totalsuivie) as totalsuivie,sum(mensuelafd.totalsuiviefin) as totalsuiviefin,sum(mensuelafd.niveau1) as niveau1,sum(mensuelafd.niveau2) as niveau2,sum(mensuelafd.niveau3) as niveau3,sum(mensuelafd.niveau4) as niveau4,sum(mensuelafd.niveau5) as niveau5,sum(mensuelafd.niveau6) as niveau6,sum(mensuelafd.mecnondetermine) as mecnondetermine FROM  mensuelafd,mois where datedubilan between datedubilan=:ParamRec AND datedubilan=:ParamRec2  GROUP BY yyyy mm',array('ParamRec'=>$month1,'ParamRec2'=>$month2));
    	}
    lorsque je choisit les date et valide c'est une page blanche qui s'affiche
    merci
  2. waritigui
    waritigui
    j'ajoute aussi que ma bar debug ne fonction pas quand clic la dessus y'a rien donc je ne peut pas vérifier si mes variables sont bien pris en postes
  3. imikado
    imikado
    Bonjour,
    Pouvez-vous créé plutot un topic dans le forum associé http://www.developpez.net/forums/f13...s/mkframework/, je regarde votre problème en parallèle
  4. imikado
    imikado
    Pensez à migrer cette discussion dans le forum comme demandé

    Pour information, en regardant un peu je vois que la requete Mysql est éronné:

    Vous ne pouvez pas écrire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    select sum() , sum()... FROM ma table where (...)		GROUP BY yyyy mm
    Lors d'une somme on fait un group by des champs affichés dans la sortie, vous ne pouvez pas ici grouper par yyyy mm..

    Ecrivez/verifiez votre requete dans votre client mysql avant de la renseigner sur le projet (en remplaçant les parties variables, comme vous l'avez fait ici)
  5. waritigui
    waritigui
    merci pour la requête j'ai enlever le groupe by yyyy mm . votre framework ma vraiment charmer mais j'ai des problèmes pour afficher les résultat de mes requêtes. vraiment merci de m'aider a voir claire dans cela!
  6. waritigui
    waritigui
    une fois de plus merci pour tous ces efforts pour nous aider a mené à bien nos projets j'ai pus réglé le problème de ma requête mais j'ai de sérieux problème pour récupérer les résultat et les afficher pour plus vous situer je vous envoie le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    public function _recherche() {
    			 
    			 $oView=new _view('mensuelafd::recherche');
    			$this->oLayout->add('main',$oView);
     
    		}		
    		
    		public function _evolution(){
    			
    			$oMensuelafd=null;
    			if(_root::getParam('month1') and _root::getParam('month2')){
    			$oMensuelafd=model_mensuelafd::getInstance()->evolutionbilan(_root::getParam('month1'),_root::getParam('month2') );
    			$oView=new _view('mensuelafd::evolution');
    			
    			$oView->oMensuelafd=$oMensuelafd;
    			plugin_debug::addSpy('tMensuelafd',$tMensuelafd);
    			$this->oLayout->add('main',$oView);}
    			
    			}
    et pour la vue de la recherche c'est toujours le mm code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    <form class="form-horizontal" action="" method="POST" >
    
    
      <script>
      $(function() {
        $( "#from" ).datepicker({
    		dateFormat: "yy-mm-dd",
          defaultDate: "+1w",
          changeMonth: true,
    	  changeYear: true,
          numberOfMonths: 1,
      language:"fr",
          onClose: function( selectedDate ) {
            $( "#to" ).datepicker( "option", "minDate", selectedDate );
          }
        });
        $( "#to" ).datepicker({
    		dateFormat: "yy-mm-dd",
          defaultDate: "+1w",
          changeMonth: true,
    	  changeYear: true,
          numberOfMonths: 1,
      language:"fr",
          onClose: function( selectedDate ) {
            $( "#from" ).datepicker( "option", "maxDate", selectedDate );
          }
        });
      });
      </script>
     
    
    <div class="form-group">
    		<label class="col-sm-5 control-label" for="from" >Date d&#039;entr&eacute;e :</label>
    		<div class="col-sm-3"><input type="text" id="from" name="month1" class="form-control"></div>
    	</div>
    
    
    
    
    <div class="form-group">
    		<label class="col-sm-5 control-label" for="to" >Date  de sortie :</label>
    		<div class="col-sm-3"><input type="text" id="to" name="month2" class="form-control"></div>
    	</div>
    
    <a class="btn btn-default" href="<?php echo $this->getLink('mensuelafd::evolution')?>">Evolution du nombre de familles suivies en afd</a>
    <a class="btn btn-default" href="<?php echo $this->getLink('mensuelafd::list')?>">Retour</a>
    </form>
    et pour la vue de la requête

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    <h2>evolution outils 2</h2>
    	
    		
    		<table class="table table-striped">
    	<tr>
    	
    		<th>mois :</th>
    		
    		<th>année :</th>
    
    		<th>Nombre de famille suivies au début de la période mois pr&eacute;c&eacute;dent :</th>
    		
    		<th>Nombre de famille enqu&ecirc;tes au cour de la période :</th>
    		
    		<th>Nombre de famille pass&eacute; en comit&eacute; de zone :</th>
    		
    		<th>Nombre de famille r&eacute;fus&eacute;es :</th>
    
    		<th>Taux de refus en comité de zone :</th>
    		
    		<th>Nombre de famille entr&eacute;e en afd durant la periode :</th>
    
    		<th>Total de familles suivies en afd au cours de la periode </th>
    		
    		<th>Nombre de famille sortie :</th>
    		
    		<th>total de familles suivies &agrave; la fin du mois :</th>
    		
    	
    	</tr>
    	
    	<!?php if($this->tMensuelafd):?>
    		<?php foreach($this->tMensuelafd as $oMensuelafd):?>
    		<tr <?php echo plugin_tpl::alternate(array('','class="alt"'))?>>
    		
    		<td><?php echo $oMensuelafd->periode ?></td>
    
    		<td><?php echo $oMensuelafd->annee ?></td>
    	
    		<td><?php echo $oMensuelafd->precedentsuivie ?></td>
    		
    		<td><?php echo $oMensuelafd->enqueteseffectue ?></td>
    
    		<td><?php echo $oMensuelafd->famillecz ?></td>
    		
    		<td><?php echo $oMensuelafd->refuseafd ?></td>
    		
    		<td><?php echo $oMensuelafd->tauxderefus?></td>
    
    		<td><?php echo $oMensuelafd->entredumois ?></td>
    		
    		<td><?php echo $oMensuelafd->nombretotalfamillessuivieperiode ?></td>
    		
    
    		<td><?php echo $oMensuelafd->totalsortie ?></td>
    
    		<td><?php echo $oMensuelafd->totalsuiviefin ?></td>
    
    				<td>
    				
    
    	</td>
    		</tr>
    		
    		<?php endforeach;?>
    	<!?php else:?>
    		<!tr>
    			<!td colspan="20">Aucune ligne</td>
    		<!/tr>
    	<!?php endif;?>
    	
    </table>
    
    <a class="btn btn-default" href="<?php echo $this->getLink('mensuelafd::recherche')?>">rechercher de bilan </a>
    merci de bien vouloir m'eclairer encore
  7. imikado
    imikado
    Pouvez-vous créer dans le topic prévu http://www.developpez.net/forums/f13...s/mkframework/
    plus facile à suivre et d'autres personnes peuvent venir répondre si je ne suis pas dispo

    de plus il m'est plus facile d'etre notifié/de gérer les messages sur le forum du framework
  8. waritigui
    waritigui
    ok! merci
Affichage des résultats 1 à 8 sur 8
Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo