I have a problem that had never happened before. My session variable "saldo" does not refreshing on the .php page. It is updated in the database after an UPDATE. But the variable is only refreshed if I log out and re-enter. What is the problem?
These are my session pages
//init.php
<?php
session_start();
mysql_connect('localhost','root','usbw');
mysql_select_db('cern_cn');
date_default_timezone_set('Europe/Lisbon');
?>
//login.php
<?php
include ('init.php');
include ('con_cern_db.php');
session_regenerate_id();
//CONSULTA DO UTILIZADOR
$consulta="Select * from login where username='" . $_POST['username'] . "' and password='" . $_POST['password'] . "' AND saldo AND id";
$resultado=mysql_query($consulta);
if (mysql_num_rows($resultado)>0) //SE O EMAIL E A PASSWORD COINCIDIREM
{
//COLOCA NA VARIAVEL LINHA OS DADOS DA CONSULTA
$linha=mysql_fetch_array($resultado);
//COLOCA O EMAIL EM SESSAO
$_SESSION['username']=$linha['username'];
$username=$_SESSION['username'];
$_SESSION['modo']=$linha['modo'];
$_SESSION['saldo']=$linha['saldo'];
$saldo=$_SESSION['saldo'];
$_SESSION['id']=$linha['id'];
$id=$_SESSION['id'];
//REDIRECCIONA A PAGINA PARA A PAGINA SECRETA
header("location: index.php");
}
else //CASO NAO COINCIDAM
{
//REDIRECCIONA PARA A PAGINA INICIAL REPORTANDO O ERRO
header("location: index.php?erro=1");
}
?>
Calling data
<?php
if (isset($_SESSION['username'])) //SE EXISTIR AUTENTICAÇÃO
{
echo ' Olá ' . $_SESSION['username'] . '.<br/>';
echo ' ' . $_SESSION['saldo'] . '.Créditos<br/>';
//echo ' Modo ' . $_SESSION['modo'] . '.<br/>';
echo " ";
//--------------------------//
//TODO O CODIGO PRIVADO AQUI//
//--------------------------//
}
else //CASO NÃO ESTEJA AUTENTICADO
{
echo 'Esta é uma àrea reservada, só utilizadores podem ter acesso.';
}
?>
//logout.php
<?php
include ('init.php');
session_destroy();
header("location: index.php");
?>