1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
| <?php
//============================================================
// PARAMETRES
//============================================================
$cfg['login'] = 'root'; // Le log d'accès
$cfg['pass'] = ''; // Le mot de passe
$cfg['maxid'] = 3; // Echec d'identification max
//==========================================================//
// COMPTEUR-BLOQUEUR - SAUVEGARDE DANS LE FICHIER "cnt.php"
//==========================================================//
function Counter($add=''){
global $cfg;
$cnt=0;
$fname=dirname($_SERVER['SCRIPT_FILENAME']).'/cnt.php';
if(!file_exists($fname)) $f=fopen($fname,'w+');
else{
$f=fopen($fname,'r+');
$lst=explode("\n",fread($f,filesize($fname)));
}
fclose($f);
$lst[0]='<?php die("Accès refusé!");?'.'>';
if($add=='reset') $lst='';
else if(!empty($add) && !in_array($add,$lst)) $lst[]=$add;
$cnt=-1;
@unlink($fname);
$f=fopen($fname,'w');
$start=max(count($lst)-($cfg['maxid']+2),0);
for($x=$start;$x<count($lst);$x++)
if(!empty($lst[$x])){ fwrite($f,$lst[$x]."\n"); $cnt++; }
fclose($f);
return $cnt;
}
//============================================================
// AUTHENTIFICATION
//============================================================
$user=@$_POST['user'];
$pass=@$_POST['pass'];
$ess=Counter();
if($user!=$cfg['login'] || $pass!=$cfg['pass'] || $ess>=$cfg['maxid']){
if(!empty($user))
Die('Echec d\'identification (essai '.max(min(
Counter(@getenv('HTTP_CLIENT_IP').' '.date('d/m/y H:i:s')),$cfg['maxid']),0).
'/'.$cfg['maxid'].')');
echo '<form method="post">'.
'User : <input name="user" type="text" value="'.$user.'"/><br/>'.
'Pass : <input name="pass" type="password" value=""/><br/><br/>'.
'<input name="valider" type="submit" value=" VALIDER "/>'.
'</form>';
exit;
}
if($ess>=1) Counter('reset');
echo 'AUTHENTIFICATION OK <br/>';
//============================================================
?> |
Partager