Tutoriel - Créer un Portfolio de A à Z 2/5 problème fonction flash()

Par damienlvka, il y a 11 ans


Bonjour à tous !
Peut être que quelqu'un pourrait-il me donner un ptit coup de pouce ?
Je retrouve un problème au sujet de la fonction flash() dans le tutoriel Créer un Portfolio de A à Z (à environ 29min30).
Une fois ma connexion effectué, je retourne sur mon index.php et découvre le message d'erreur suivant:
Fatal error: Call to undefined function flash() in C:...
L'erreur indique ma ligne ou se trouve <?= flash(); ?> (sur la page header.php).

Je me suis un peu perdu.. j'ai essayé de l'inclure comme ceci: <?php flash(); ?> mais rien n'y fée..
Je ne trouve pas la source de mon erreur.

Voici le contenu de ma page session.php:

<?php
function flash(){
    if(isset($_SESSION'Flash'])){
    extract($_SESSION'Flash']);
    unset($_SESSION'Flash']);
    return "<div class='alert alert-$type'>$message</div>";
    }

}
function setFlash($message, $type = 'success'){
    $_SESSION'Flash']'message'] = $message;
    $_SESSION'Flash']'type'] = $type;
}

Merci d'avance pour vos lumières.

11 réponses

Xen0risDEV, il y a 11 ans

Bonjour

Fichier includes.php :

<?php
include 'constants.php';
include 'db.php';
include 'form.php';
// Session_start();
include 'auth.php';
include 'session.php';
damienlvka, il y a 11 ans

Bonjour F0rZ3r0.
Merci pour votre réponse, je viens de vérifier la page includes.php et tout est correct...
Je reviens sur mes pas en retraçant le tutoriel mais je suis toujours dans une impasse.
J'espère finir par comprendre d’où provient mon erreur en essayant de ne pas me démoraliser.
Bien à vous.

Xen0risDEV, il y a 11 ans

Tenter un <?= flash(); ?>

damienlvka, il y a 11 ans

Oui, tout à fait. Merci pour votre regard.

<!DOCTYPE html>
<html lang="fr">
<head>

    <meta charset="ISO-8859-1">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">

    <title>Mon site</title>
    <meta name="description" content="" />

    <link rel="stylesheet" href="css/style.css"/>
    <link rel="stylesheet" href="http://twitter.github.com/bootstrap/assets/css/bootstrap-1.2.0.min.css"/>

    <!--[if lt IE 9]><script src="http://html5shim.googlecode.com/svn/trunk*html5.js"></script><![endif]-->

    <script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
    <script src="js/isotope.js"></script>
    <script src="js/folioo.js"></script>

    <script type="text/javascript" src="js/zoombox/zoombox.js"></script>
    <link href="js/zoombox/zoombox.css" rel="stylesheet" type="text/css" media="screen" />

    <script type="text/javascript">
        jQuery(function($){
            $('a.zoombox').zoombox();

        });
        </script>

</head>
<body>

    <header>

    <section class="container">

            <div id="logo">
                <img src="images/logo.png">
            </div>

    </section>    

    </header>

     <?= flash(); ?>
Xen0risDEV, il y a 11 ans

Tout et bon dans le header.php, et il vous dit toujours une erreur avec <?= flash(); ?> ?

Cordialement.

damienlvka, il y a 11 ans

Oui, tout à fait:
Call to undefined function flash() in C:... on line55 quand je me trouve sur ma page index.php

Xen0risDEV, il y a 11 ans

Qu'elle et le contenu de la page index.php ?

damienlvka, il y a 11 ans
<?php include 'partials/header.php'; ?>
<?php include 'lib/includes.php'; ?>
        <section class="container">
        <h1>Mon site en PHP !</h1>
        </section>

<?php include 'lib/debug.php'; ?>
<?php include 'partials/footer.php'; ?>
Xen0risDEV, il y a 11 ans

Tout en haut de votre page index.php

<?php include 'lib/includes.php'; ?>
<?php include 'partials/header.php'; ?>
        <section class="container">
        <h1>Mon site en PHP !</h1>
        </section>

<?php include 'lib/debug.php'; ?>
<?php include 'partials/footer.php'; ?>

Header -> Includes -> Flash = ERROR
Includes -> Header -> Flash = OK
=)

damienlvka, il y a 11 ans
<?php
$auth = 0;
include 'lib/includes.php';
include 'partials/header.php';
?>

Merci beaucoup pour votre aide !!
Tout fonctionne dès à présent.
Bien à vous.

Xen0risDEV, il y a 11 ans

De rien, s'été un plaisir de vous venir en aide.

Cordialement.