Empfehlungen: Erweiterte Suche

check('Message.flash') immer true ?

Ausgabedaten formatieren und darstellen

check('Message.flash') immer true ?

Beitragvon frankenmatze » So 12. Jul 2009, 12:17

Ich habe in meinem default Layout folgende Zeilen eingebaut:

Code: Alles auswählen
    <?php
            if($session->check('Message.flash'));
            {
                echo '<h2>&amp;gt;&amp;gt; ';
                    $session->flash();
                echo '</h2>';
            }
            ?>



Ich hatte erwartet, dass dann die flash()-Messsage nur ausgegeben wird, wenn eine vorhanden wäre.

Praktisch gibt er mir aber immer "h2>>/h2" aus. Ist eine Nachricht vorhanden, dann wird diese sogar eine Zeile nach unten versetzt.
Hat jemand eine Idee, woran es hier liegt?
frankenmatze
 
Beiträge: 6
Registriert: Fr 10. Jul 2009, 11:25

Re: check('Message.flash') immer true ?

Beitragvon Jörg » Mo 13. Jul 2009, 17:38

Hallo Matze,
seltsam ... laut dem Cake-CORE wird false zurück gegeben ...
Code: Alles auswählen
/**
 * Returns true if given variable is set in session.
 *
 * @param string $name Variable name to check for
 * @return boolean True if variable is there
 * @access public
 */

    function check($name) {
        $var = $this->__validateKeys($name);
        if (empty($var)) {
            return false;
        }
        $result = Set::extract($_SESSION, $var);
        return isset($result);
    }



Versuche es mal hier mit:
Code: Alles auswählen
<?php
                    if ($session->check('Message.flash')):
                            $session->flash();
                    endif;
                ?>


Ist eigentlich genau die selbe Methode, jedoch ein wenig anders geschrieben.
Funktioniert bei mir einwandfrei ....

Gruß
Jörg
Jörg
 
Beiträge: 132
Registriert: Di 13. Mai 2008, 13:45
Wohnort: Bremen
CakePHP-Version: 2.0.3, 1.3.x
OS: Win7/Ubuntu


Zurück zu Views

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast