Gros problèmes de sessions php[RESOLU]

anakil Messages postés 1 Statut Membre -  
gryzzly Messages postés 5220 Statut Contributeur -
Bonjour à tous je suis nouveau et je suis fou du php,
alors voilà j'en train de construire un site et j'ai créé un panel admin mais le problème c'est que j'ai créé une protection par mdp et login et avant ça marchait parfaitement et d'un coup je sais pas ce que g touché ça ne marche plus g deux fichiers pour y parvenir et quand je met se logger il redirige bien vers la page ?admini&admin et d'un coup come si la varialbe n'existait plus il redirige vers la page d'erreur voi ci le code de mes deux pages:

Le code login.php qui correspond à ?adminli ::
<?php

    // Definition des constantes et variables
    define('LOGIN','modo');
    define('PASSWORD','lapinloup');
    $errorMessage = '';

    // Test de l'envoi du formulaire
    if($_POST) {
    
        // Les identifiants sont transmis ?
        if(!empty($_POST['login']) && !empty($_POST['password'])) {
        
            // Sont-ils les mêmes que les constantes ?
            if($_POST['login'] !== LOGIN) {
            
                $errorMessage = 'Mauvais login !';
            }
              elseif($_POST['password'] !== PASSWORD) {
              
                $errorMessage = 'Mauvais password !';
            }
              else
            {
                // On ouvre la session
                session_start();
                
                // On enregistre le login en session
                $_SESSION['login'] = 'LOGIN';
                
                // On redirige vers le fichier admin.php
                echo "<meta http-equiv='Refresh' content='0;URL=?admini&admin'>";
                exit();
            }
        }
          else
        {
            $errorMessage = 'Veuillez inscrire vos identifiants svp !';
        }
    }
?>





<html>

<head>
<title>Administration</title>
<style type="text/css">
td
{
font-family:Verdana;
font-size:12;
color:#00;
}

a
{
font-family:Verdana;
font-size:12;
color:#000000;
text-decoration:none;
}

a:hover
{
font-family:Verdana;
font-size:12;
color:#000000;
text-decoration:underline;
}

</style>
</head>
<body bgcolor="#333333">

<table border="0" align="center" cellpadding="3" cellspacing="1" bgcolor="#FFCC33">
   <tr valign="top">
      <td>

<br>
<?php 
 ?>

<center><b>IDENTIFICATION</b></center>

<br>


        <form action="?adminli" method="post">
            <fieldset>
                <legend>Identifiez-vous</legend>
                <?php
                    // Rencontre-t-on une erreur ?
                    if(!empty($errorMessage)) {
                    
                        echo htmlspecialchars($errorMessage);
                    }
                ?>
                <p>
                    
                    <input type="hidden" name="login" id="login" value="modo" />
                </p>
                <p>
                    
                    <input type="hidden" name="password" id="password" value="lapinloup" /> 
                    <input type="submit" name="submit" value="Se logguer" />
                </p>
            </fieldset>
        </form><?php  ?>
    
</table>
<?php



?>


et le code verif.php que je mets dans le header des pages que je veux protéger::

<?php

    // Definition des constantes et variables
    define('LOGIN','modo');
    define('PASSWORD','lapinloup');
    $errorMessage = '';

    // Test de l'envoi du formulaire
    if($_POST) {
    
        // Les identifiants sont transmis ?
        if(!empty($_POST['login']) && !empty($_POST['password'])) {
        
            // Sont-ils les mêmes que les constantes ?
            if($_POST['login'] !== LOGIN) {
            
                $errorMessage = 'Mauvais login !';
            }
              elseif($_POST['password'] !== PASSWORD) {
              
                $errorMessage = 'Mauvais password !';
            }
              else
            {
                // On ouvre la session
                session_start();
                
                // On enregistre le login en session
                $_SESSION['login'] = 'LOGIN';
                
                // On redirige vers le fichier admin.php
                echo "<meta http-equiv='Refresh' content='0;URL=?admini&admin'>";
                exit();
            }
        }
          else
        {
            $errorMessage = 'Veuillez inscrire vos identifiants svp !';
        }
    }
?>
<?php 
if($page == logout){
// Démarrage ou restauration de la session
session_start();

// Réinitialisation du tableau de session
// On le vide intégralement
$_SESSION = array();

// Destruction de la session
session_destroy();

// Destruction du tableau de session
unset($_SESSION);
}

?> 
<?php
// On prolonge la session
session_start();

// On teste si la variable de session existe et contient une valeur
if(empty($_SESSION['LOGIN'])) {

    // Si inexistante ou nulle, on redirige vers le formulaire de login
    echo "<meta http-equiv='Refresh' content='0;URL=?adminli&connec'>";
    exit();
}
?>
ET la suite du contenu après verif.php alors svp aidez moi j'ai cherché pendant 6 jours pourquoi ça marchait pu pas trouvé...
A voir également:

1 réponse

gryzzly Messages postés 5220 Statut Contributeur 1 335
 
salut

cool de marquer résolu... mais on a pas la solution au probleme. ce serait bien de penser a ceux qui pourraient tomber sur un probleme similaire ;-)
ps : en faisant un résumé de la quesiton et du code ce serait pas mal...

vivi, je veux la cremière avec 8-)
0