Salut,
si tu as bien mis le session_strat() dans chaque page, la récupération d'une variable de session est indépendante de l'inclusion de ton fichier. Si la variable est définie, tu n'as pas besoin de ce fichier pour la définir à nouveau.
Pour ton code, tu pourrais comme te l'a mentionné
Bob (Mc Melun), tu pourrais avantageusement l'aérer et j'ajouterais séparer le PHPdu HTML. Il ne sert en effet strictement à rien de faire interpréter le HTML deux fois, une fois par PHP et une seconde fois par le navigateur. Ton code devrait donc ressembler à ceci:
<html>
<?php
print $_SESSION['identif']; // ca ne fonctionne pas ici
if(isset($_POST['ident']) && isset($_POST['pass']))
{
//on garde l identifiant en memoire
$_SESSION['identif']=$_POST['ident'];
$_SESSION['password']=$_POST['pass'];
}
if(isset($_SESSION['identif']) && isset($_SESSION['password']))
{
$pwd = mysql_query("SELECT passw
FROM contact
WHERE identif='".$_SESSION['identif']."'");
$pwd=mysql_fetch_array($pwd);
$pwd=stripslashes($pwd['passw']);
if ($_SESSION['password'] == $pwd)
{
// ici le $_SESSION['identif'] fonctionne
echo "Bonjour, ".$_SESSION['identif']."";
include "deco.php";
}
else
{
// si c est pas le bon mdp
unset($_SESSION['identif']);
unset($_SESSION['password']);
?>
<form name='form1' method ='POST' action='<?php echo($_SERVER['PHP_SELF']); ?>'>
<div id='Layer5' style='position:absolute; width:166px; height:42px; z-index:6; left: 845px; top: 19px'> <input type='text' name='ident'></div>
<div id='Layer6' style='position:absolute; width:180px; height:45px; z-index:7; left: 845px; top: 65px'> <input type='password' name='pass'></div>
<div id='Layer7' style='position:absolute; width:98px; height:45px; z-index:8; left: 825px; top: 105px'><input type='submit' name='Submit' value='Envoyer'></div>
</form>
<div id='Layer4' style='position:absolute; width:236px; height:33px; z-index:4; left: 765px; top: 140px'><a href='inscription.php'>Vous n'avez pas d'identifiant ?</a></div>";
<div id='Layer4' style='position:absolute; width:236px; height:33px; z-index:4; left: 765px; top: 170px'><font color='RED'>Mot de passe incorrect !</font></div>";
<?php
}
}
else
{
?>
<div id='Layer2' style='position:absolute; width:149px; height:28px; z-index:4; left: 713px; top: 25px'>Votre identifiant :</div>
<div id='Layer4' style='position:absolute; width:170px; height:28px; z-index:5; left: 685px; top: 69px'>Votre mot de passe :</div>
<form name='form1' method ='POST' action='<?php echo($_SERVER['PHP_SELF']); ?>'>
<div id='Layer5' style='position:absolute; width:166px; height:42px; z-index:6; left: 845px; top: 19px'> <input type='text' name='ident'></div>
<div id='Layer6' style='position:absolute; width:180px; height:45px; z-index:7; left: 845px; top: 65px'><input type='password' name='pass'></div>
<div id='Layer7' style='position:absolute; width:98px; height:45px; z-index:8; left: 825px; top: 105px'> <input type='submit' name='Submit' value='Envoyer'></div>
</form>
<div id='Layer4' style='position:absolute; width:236px; height:33px; z-index:4; left: 765px; top: 140px'><a href='inscription.php'>Vous n'avez pas d'identifiant ?</a></div>";
<?php
}
?>
</html>
C'est nettement plus lisible.
Ceci dit, tu dis que tu es paumé, j'avoue que pour ma part, je saisis mal le schéma de construction de tes pages...