<div class="row"> <div class="small-4 small-centered columns"> <?php if (isset($_SESSION['user'])) { ?> <div data-alert class="alert-box success radius"> Login successful! <a href="#" class="close">×</a></div> <?php } elseif (isset($_SESSION['login_error'])) { ?> <div data-alert class="alert-box alert round"> <?php print $_SESSION['login_error']; ?> <a href="#" class="close">×</a></div> <?php } ?> </div> </div>
When $_Session[‘user’] has been set I want the ‘Login successful’ message to appear only once after signing in. If I refresh the page or click an anchor message will reappear, which is to be expected. If anyone knows a better way of doing this or if it is possible only in php.
Advertisement
Answer
you must set a observer value to see whether the value you want to be able to hide is active or not. this code should help.
<?PHP session_start(); $_SESSION['login_status']=false; ?>
<div class="small-4 small-centered columns"> <?php if($_SESSION['login_status']==false){ ?> <?php if (isset($_SESSION['user'])) { ?> <div data-alert class="alert-box success radius"> Login succesful! <a href="#" class="close">×</a> </div> <?php $_SESSION['login_status']=true; ?> <?php } elseif (isset($_SESSION['login_error'])) { ?> <div data-alert class="alert-box alert round"> <?php print $_SESSION['login_error']; ?> <a href="#" class="close">×</a> </div> <?php } ?> <?php } ?> </div>