[Résolu] Fermer une session

WRInaute impliqué
Bonjour

Voila j'utilise un script trouvé sur le net et un peu modifié pour insérer les news dans ma base de données.
Il est utilise les sessions pour se connecter mais seulement il n'y a pas moyen de se déconnecter a partir de celui-ci, ma sessions reste ouverte tant que le navigateur est lancé.

Je voudrais changer cela et juste faire un lien "Se déconnecter" car je n'y accèderais pas uniquement depuis mon PC, et je serais donc plus tranquille.

Voici le code

Code:
<?
session_start(); 

if(!isset($_SESSION['ident'])) {
    $_SESSION['ident'] = false ;
}

require_once('conf/config.php');

$db_link = @mysql_connect($host,$login,$pass);
mysql_select_db($base);

if(isset($_POST)) {
    foreach($_POST as $k => $v) {
        $_POST[$k] = trim(htmlspecialchars($v)) ;
    }
}
if(isset($_GET)) {
    foreach($_GET as $k => $v) {
        $_GET[$k] = trim(htmlspecialchars($v)) ;
    }
}

if(isset($_POST['login']) && $_POST['login'] == $login_news 
    && isset($_POST['pass']) && $_POST['pass'] == $pass_news) {
    $_SESSION['ident'] = true ;
}
$time = time();
if($_SESSION['ident'] == false) {
    print '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <title>Administration des news</title>
    <link rel="stylesheet" type="text/css" href="style.css">
    </head>
    <body>
    <div id="cap_cadre"><br /><br /><strong>Identification</strong>
    <form action="admin.php" method="post">
    Login<br />
    <input type="text" name="login" size="25" /><br />
    Password<br />
    <input type="password" name="pass" size="25" /><br />
    <input type="submit" value="Valider" />
    </form>
    </div>
    </body>
    </html>';
}
elseif($_SESSION['ident'] == true) {
   
    if(isset($_POST['send'])) {
        if($_POST['send'] == 'new') {
        $sql = "INSERT INTO news (date,titre,news,active,time)
        values
        (now(),'".$_POST['titre']."','".$_POST['news']."','1','$time')";
        }
        elseif($_POST['send'] == 'update') {
        $sql = 'update news set titre = "'.$_POST['titre'].'",
        news = "'.$_POST['news'].'", date =
        "'.$_POST['date'].'" WHERE newsId = "'.$_POST['newsId'].'"';
        }
        mysql_query($sql,$db_link) or die(mysql_error());
    }
    if(isset($_GET['edit']) and is_numeric($_GET['edit'])) {
        $Id = $_GET['edit'] ;
        $sql = 'SELECT * FROM news WHERE newsId = "'.$Id.'" LIMIT 1' ;
        $rc = mysql_query($sql,$db_link);
        while($data = mysql_fetch_array($rc)) { 
            print '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
            <html>
            <head>
            <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
            <title>Administration des news</title>
            <link rel="stylesheet" type="text/css" href="style.css">
            </head>
            <body>
            <div id="cap_cadre">
            <form action="admin.php" method="post">
            <strong>Modification d\'une news :</strong><br /><br />
            Titre<br />
            <input type="text" name="titre" size="100"
            value="'.htmlentities($data['titre']).'"/><br />
            Date de la News<br />
            <input type="text" name="date" size="10" value="'.$data['date'].'" />
            News<br />
            <textarea name="news" cols="100"
            rows="10">'.htmlentities($data['news']).'</textarea>
            <br /><input type="submit" value="Valider" />
            <input type="hidden" name="newsId" value="'.$_GET['edit'].'" />
            <input type="hidden" name="send" value="update" />
            </form>
            </div>
            <hr /><br />
            </body>
            </html>';
        }
    }
    else {
        print '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
        <html>
        <head>
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
        <title>Administration des news</title>
        <link rel="stylesheet" type="text/css" href="style.css">
        </head>
        <body><div id="cap_cadre">
        <form action="admin.php" method="post">
        <strong>Ajouter une news :</strong><br /><br />
        Titre<br />
        <input type="text" name="titre" size="100" /><br />
        News<br />
        <textarea name="news" cols="100" rows="10"></textarea>
        <br /><input type="submit" value="Valider" />
        <input type="hidden" name="send" value="new" />
        </form>
        </div>      
        <hr /><br />
        <strong>Gestion des News :</strong><br /><br /><ul>';
    
        $sql = 'SELECT * FROM news ORDER BY newsId DESC' ;
        $rc = mysql_query($sql,$db_link);
        while($data = mysql_fetch_array($rc)) {
            print '<li>
            Le '.$data['date'].' Titre : '.$data['titre'].'
            <br />=><a href="?edit='.$data['newsId'].'">Editer</a></li>
            ';
        }
        print'</ul>' ;
    }
    print'</body>
    </html>';
}

?>

Merci à vous :)
 
WRInaute accro
pour supprimer ta session, tu la vide, tu la détruit, et tu fais une redirection serveur pour etre bien sur qu'elle soit prise en compte :)


$_SESSION = array()
session.destroy();
header("location: ...");
 
Discussions similaires
Haut