On 4 juin, 13:17, Gareth McCumskey <[email protected]> wrote:
> The flash is actually supposed to be destroyed on a page refresh. It is
> supposed to only be displayed once and destroyed. The flsh is meant to be
> used as a one time status/event notification message, not as something to be
> persisted across requests.
>

Except if you get/set it in the same action. The code is working with
firefox so I don't think it's due to any conceptual mistake.

>
> On Thu, Jun 4, 2009 at 12:37 PM, tonio607 <[email protected]> wrote:
>
> > Hi,
>
> > I have a very strange bug in my application. I use symfony 1.2.7,
> > Doctrine and sfGuard.
>
> > I have a search functionnality with many criterias and I use the
> > DoctrinePager to display the result. The criterias are persisted with
> > a flash variable.
>
> > The problem is when I use Internet Explorer (6 or 7), a click on next
> > page destroy the flash (but not the entire session). On all the other
> > browsers, it works well. It works also when there is security is set
> > to off. And it works and when I don't display the template (ie return
> > sfView::NONE). These three elements are not very helpful to make a
> > diagnosis.
>
> > I check the request (cause I thought it was the only difference) and
> > the differences between the header is the presence of HTTP_KEEP_ALIVE:
> > '300',  and  HTTP_CACHE_CONTROL: max-age=0 in firefox but not in IE.
> > But I'm pretty sure it's not due to the cache (which is turned off in
> > symfony and in the browsers).
> > I also tested just with a string, rather than an array in the flash.
> > It doesn't change anything.
> > I tried to display the $_SESSION to bypass the symfony getFlash or
> > getAttribute with a namespace but the variable corresponding to the
> > flash is empty indeed.
> > I tested the setFlash() which seems to work well as long as you don't
> > reload the page...
> > I also sniff the request with Fiddler to see if it was not a problem
> > with the request sent by IE. I didn't find anything.
>
> > Here is a piece of code :
>
> >  public function executeRechercherDossier(sfWebRequest $request)
> >  {
> >    $this->form = new EnregistrementDossierFormFilter();
>
> >    // Traitement du formulaire
> >    if ($request->isMethod('post'))
> >    {
> >      $valeurs = $request->getParameter($this->form->getName());
> >      $this->form->bind($valeurs);
> >      if ($this->form->isValid())
> >      {
> >        // Envoi des critères de recherche valides à la page de
> > résultat
> >        $this->getUser()->setFlash('criteres', $valeurs);
> >        $this->redirect('enregistrement/listeDossiers');
> >      }
> >    }
> >  }
>
> >  public function executeResults(sfWebRequest $request)
> >  {
> >    $criteres = $utilisateur->getFlash('criteres', array());
> >    /*$this->forward404Unless($criteres != null, 'Vous devez arriver
> > du
> >      formulaire de recherche pour afficher cette page.');*/
> >    $utilisateur->setFlash('criteres', $criteres);
>
> >    // Récupération des résultats de la recherche
> >    $form = new EnregistrementDossierFormFilter();
> >    $query = $form->buildQuery($criteres);
> >    $this->rappelCriteres = $form->afficheCriteres($criteres);
>
> >    // Récupération des informations de tri et d'ordre
> >    $this->tri = $request->getParameter('tri', 'r.numero');
> >    $this->ordre = $request->getParameter('ordre', 'asc');
> >    $trisPossibles = array('r.numero', 'r.libelle_demande',
> > 'et.numero',
> >      'ctc.nom');
> >    if (!in_array($this->tri, $trisPossibles))
> >    {
> >      $this->tri = 'r.numero';
> >    }
> >    // Test si l'ordre est valide
> >    if ($this->ordre != 'asc' &&  $this->ordre != 'desc')
> >    {
> >      $this->ordre = 'asc';
> >    }
> >    // Construction du pager
> >    $pagination = MyPager::getPagination('Dossier');
> >    $this->pager = new MyPager($query, $pagination);
> >    $this->dossiers = $this->pager->getResults();
> >  }
>
> > If somebody has anything  to provide about such things, I would be
> > very thanksfull.
>
> --
> Gareth McCumskeyhttp://garethmccumskey.blogspot.com
> twitter: @garethmcc
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"symfony users" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/symfony-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to