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

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Autres composants PHP Discussion :

zend paginator et ajout de paramètre


Sujet :

Autres composants PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2005
    Messages
    489
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2005
    Messages : 489
    Par défaut zend paginator et ajout de paramètre
    Bonjour,

    Voilà, j'utilisais jusqu'à présent un zend_paginator pour afficher une liste de données. Jusque là, pas de souci, tout fonctionne.

    J'ai ajouté un <form> au dessus de ma liste pour pouvoir filtrer sur une donnée. Cela fonctionne pour la première page, masi dès que je clique sur 'page 2', mon paramètre sélectionné dans la liste est perdue...

    Auriez-vous une solution pour faire transiter ce paramètre ?

    D'avance merci.

    Vince

  2. #2
    Membre Expert
    Avatar de 5h4rk
    Homme Profil pro
    CTO at TabMo
    Inscrit en
    Février 2011
    Messages
    813
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : CTO at TabMo
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2011
    Messages : 813
    Par défaut
    Ton code nous serais utile en précisant exactement où ça coince

  3. #3
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2005
    Messages
    489
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2005
    Messages : 489
    Par défaut
    ok pas de souci:

    voilà mon controller :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    $page = 1;
    if($this->_request->isGet()){
        $page = $this->_request->getParam('page');
    }
    $paginator = Zend_Paginator::factory($select);
    $paginator->setItemCountPerPage($nbItemPaginator);
    $paginator->setCurrentPageNumber($page);
    $this->view->paginator = $paginator;
    ou $select =

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    $listCom = $com->select()->setIntegrityCheck(false)
    		->from('commercant')
    		->join(array('u'=>'user'),'u.idUser = commercant.idUser')
    		->where('u.actif=1')
    		->order("commercant.nomCommerce asc");

    et dans ma vue, j'ai le formulaire de tri avec ma liste :
    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
     
    <?php
    		if($this->user->role=='admin') {
    			echo "<form method='post' action='".$this->baseUrl."dp'>";
    				echo "<table>";
    					echo "<tr>";
    						echo "<td align='left'>";
    							echo "<b>Demandes payées entre le </b>";
    							echo "<input type='text' name='searchStart' value='".$this->searchStart."' />";
    							echo "<b> et le </b>";
    							echo "<input type='text' name='searchEnd' value='".$this->searchEnd."' />";
    							echo "<b> (JJ-MM-AAAA) pour </b>";
    							echo "<select name='searchCom'>";
    								echo "<option value=''></option>";
    								foreach ($this->listcom as $com){
    									if($this->searchCom == $com['idCommercant']){
    										echo "<option selected value='".$com['idCommercant']."' label='".$com['nomCommerce']."'>".$com['nomCommerce']."</option>";
    									}else{
    										echo "<option value='".$com['idCommercant']."' label='".$com['nomCommerce']."'>".$com['nomCommerce']."</option>";
    									}
    								}
    							echo "</select>";
     
    						echo "</td>";
    						echo "<td>";
    							echo "<input type='submit' value = 'Rechercher' name='Rechercher'' />";
    						echo "</td>";
    					echo "</tr>";
    				echo "</table>";
    			echo "</form>";	
    		}
    	?>
    et en dessous, le tableau :

    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
     
    <?php echo $this->escape($dp['datecrea']);?></td>
    	<td><?php echo $this->escape($dp['nom']);?></td>
    	<td><?php echo $this->escape($dp['prenom']);?></td>
    	<td><?php echo $this->escape($dp['montant']);?></td>
    	<td><?php echo $this->escape($dp['libelle']);?></td>
    	<td><?php if($dp['etat'] == 2) { echo $this->escape($dp['datemodif']); } else { echo "&nbsp;"; } ?></td>
    	<td><?php echo $this->escape($dp['email']);?></td>
    	<td>
    	<a href="<?php echo $this->baseUrl; ?>/dp/voir/id/<?php
    	echo $dp['idDemandePaiement'];?>">Consulter</a>
    	</td>
    	<td>
    	<a target="_blank" href="<?php echo $this->baseUrl; ?>/pay/voir/id/<?php echo $dp['id']>">Facture</a>
    	</td>
    	<td>
    	
    	<?php 
        	//  Fonction Envoyer (ennvoi lien sécurisé au client)
    	    if($dp['idEtat']==1 || $dp['idEtat']==3){
    	      echo "<a href=".$this->baseUrl."/dp/send/id/".$dp['idDemandePaiement'].">Envoyer</a>";
    	    }
        
          	// Fonction Annuler  (affiché si le paiement a eu lieu ce jour)
          	$date = new Zend_Date();
          	$date = $date->toString('yyyy-MM-dd');
          
          	$datePay = substr($dp['datePaiement'], 0, 10);
        
          	if($dp['idEtat']==2 && $date == $datePay){
            	echo "<b><a href=".$this->baseUrl."/dp/annuler/id/".$dp['idDemandePaiement']." title='Annuler le paiement'>Annuler</a></b>";
          	}else{
          		if($dp['idEtat']==2 && $this->user->role == 'admin' && $dp['transactionId'] != ''){
          			echo "<b><a href=".$this->baseUrl."/dp/rembourser/id/".$dp['idDemandePaiement']." title='Rembourser le paiement'>Rembourser</a></b>";
          		}
          	}
          
      	?>
      </td>
     
     
    	</tr>
    	<?php endforeach; /**
    	                   * Fin LOOP
    	                   */?>
     
    	</tbody>
    	</table>
    <br />
    <?php echo $this->paginator; ?>

  4. #4
    Membre Expert
    Avatar de 5h4rk
    Homme Profil pro
    CTO at TabMo
    Inscrit en
    Février 2011
    Messages
    813
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : CTO at TabMo
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2011
    Messages : 813
    Par défaut
    Et c'est quoi que tu perds exactement d'aprés le code que tu as posté

  5. #5
    Membre éclairé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2005
    Messages
    489
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Janvier 2005
    Messages : 489
    Par défaut
    décidément ... j'ai une petote tête..

    en fait, je perds la valeur sélectionné dans le premier <form>, dans le select 'searchCom'

    le but étant par exemple d'avoir une URL qui se termine par :

    http..../page/2/searchCom/1 au lieu de http..../page/2 !

    Merci

  6. #6
    Membre Expert
    Avatar de 5h4rk
    Homme Profil pro
    CTO at TabMo
    Inscrit en
    Février 2011
    Messages
    813
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : CTO at TabMo
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2011
    Messages : 813
    Par défaut
    je suppose que le select te permet d'effectuer des action sur ton tableau ?
    Si tel est le cas il faut que tu ajoute à ton paginateur les données qui ont été passé

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [ZF 1.9] Zend Paginator, comment passer des paramètre dans l'url ?
    Par mrjay42 dans le forum Autres composants
    Réponses: 6
    Dernier message: 02/12/2009, 15h49
  2. Ajout de paramètres dans le path du forward
    Par sylvain_neus dans le forum Struts 1
    Réponses: 6
    Dernier message: 14/11/2007, 17h31
  3. Ajout de paramètres à un programme
    Par cretindezalpes dans le forum Delphi
    Réponses: 6
    Dernier message: 19/01/2007, 15h30
  4. PortletRequest ajout de paramètres
    Par qwiskas dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 22/12/2006, 16h28
  5. [ajouter des paramètres au post avant envoi]
    Par jean-jacques varvenne dans le forum Général JavaScript
    Réponses: 10
    Dernier message: 11/04/2006, 18h01

Partager

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