game/securite.php

38 lines
1.4 KiB
PHP
Raw Normal View History

2007-11-04 11:00:00 +00:00
<?php
2007-11-05 11:00:00 +00:00
require('connectBDD.php');
2007-11-04 11:00:00 +00:00
// V<>rification que la session soit bien d<>finit et qu'elle ne soit pas vide
2007-11-05 11:00:00 +00:00
if (!isset($_SESSION) || $_SESSION['id'] == '' || $_SESSION['auth_level'] == '' || $_SESSION['galaxy'] == '' || $_SESSION['ss'] == '' || $_SESSION['pos'] == '') {
session_destroy();
unset($_SESSION);
2007-11-04 11:00:00 +00:00
header('Location: ../index.php?erreur=1');
exit;
}
// V<>rification que la session n'ait pas <20>t<EFBFBD> vol<6F>e
if (!isset($_SESSION) || $_SESSION['ip'] == '' || $_SESSION['ip'] != $_SERVER["REMOTE_ADDR"] || $_SESSION['realip'] == '' || $_SESSION['realip'] != realip()) {
session_destroy();
unset($_SESSION);
header('Location: ../index.php?erreur=1');
exit;
}
// D<>connection automatique au bout de 20 min d'inactivit<69>
2007-11-05 11:00:00 +00:00
if (!isset($_SESSION) || $_SESSION['timestamp'] + 1200 < time()) {
2007-11-04 11:00:00 +00:00
session_destroy();
unset($_SESSION);
header('Location: ../index.php?erreur=5');
exit;
}
// V<>rification que la requ<71>te proviennent du serveur
if (!isset($_SERVER['HTTP_REFERER'])) $_SERVER['HTTP_REFERER'] = '';
2007-11-05 11:00:00 +00:00
if (!ereg(time().'http://battle.halo.fr/', time().$_SERVER['HTTP_REFERER']) && $_SERVER['HTTP_REFERER'] != '') {
2007-11-04 11:00:00 +00:00
setHistorique('Requ<71>te depuis une adresse non officiel', 'Par mesure de s<>curit<69>, la requ<71>te de '.$_SESSION['id'].' a <20>t<EFBFBD> annul<75>e car l\'\'adresse de provenance ne correspond pas <20> celle du site : '.$_SERVER['HTTP_REFERER']);
session_destroy();
header('Location: ../index.php?erreur=4');
exit;
}
2007-11-05 11:00:00 +00:00
$_SESSION['timestamp'] = time();
mysql_close();
2007-11-04 11:00:00 +00:00
?>