Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2896 connectés 

  FORUM HardWare.fr
  Programmation

  [PHP] -> sécurité toute prete (session+cookie)

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[PHP] -> sécurité toute prete (session+cookie)

n°90057
potiron
...
Posté le 16-01-2002 à 22:18:05  profilanswer
 

je viens de finir un script pour la secu que je trouve interessant alors autant qu'il sert a tout ceux qui on ont besoin .
il mixe cookies+sessions pour essayer d'avoir une bonne sécu ... il est possible de lui rajouter un module mysql pour encore renforcer la sécu ..
 
 
--- PAGE FORMULAIRE (demande log+pass -> verif) ---
 
<?
// -->> a copier dans : "form.php"
 
ob_start();
 
if( $submit=="Validation" ){
    // mettre ici une requete ou autre pour recup les infos login
    $veriflog="a";    $verifpass="b";
    if( $log==$veriflog && $pass==$verifpass ){
        // creation session, ou session mysql ou ..... (ici : cookie+session pour + de sécurité)
        session_start();
        session_register("ip" );$ip=$REMOTE_ADDR;
        session_register("time" );$time=time();        
        $id=session_id();setcookie("id",$id);        
        //
        header("location: p1.php" );
        echo "<script language='JavaScript'>window.location='p1.php'</script>";
    }else{
        // renvoit sur le form
        session_destroy();
        setcookie("id" );
        header("location: form.php" );
        echo "<script language='JavaScript'>window.location='form.php'</script>";
    }
}
?>
 
<form method=post action="form.php">
log<input type="text" name="log">
<br>
pass<input type="text" name="pass">
<br><br>
<input type="submit" value="Validation" name="submit">
</form>
 
<?ob_end_flush()?>
 
 
--- VERIFICATION (protege une page) ---
<?
// -->> a copier dans : "verif.php"
 
// verif a mettre dans TOUTES les pages a securiser ...
session_start();
if( $HTTP_COOKIE_VARS['id']==session_id() && $ip==$REMOTE_ADDR ){
    // pour les infos c'est bon !
    if( abs(time()-$time>5) ){
        // renvoit sur le formulaire si le temps est depassé ..
        session_destroy();
        setcookie("ip" );
        header("location: form.php" );
        echo "<script language='JavaScript'>window.location='form.php'</script>";
    }else{
        // rajoute nouveau temps
        session_register("time" );$time=time();  
    }
}else{
    // renvoit sur le formulaire
    session_destroy();
    setcookie("ip" );
    header("location: form.php" );
    echo "<script language='JavaScript'>window.location=
 
 
'form.php'</script>";
}
?>
 
 
 
--- EXEMPLE (page a protéger) ---
<?
// a copier dans : "p1.php"
 
 
include("verif.php" );
?>
page 1
 
<br><br><br>cookie :<br>
<?
print_r($HTTP_COOKIE_VARS);
?>
<br><br><br>
<a href="p2.php">RDV a la page 2</a>
 
 
------------------
------------------
 
Le PHP doit avoir les sessions d'activées et l'option "enable−trans−sid" doit etre a 1 sinon va falloir que vous passiez manuellement l'ID de session de page en page ce qui arrive souvent sur les hebergeurs gratuit sans compter que si les cookies du client ne sont pas activés vous aurez le meme probleme .
la version doit etre superieur a php 4.03 (4.04??) pour pouvoir utiliser les ob_start et C° ..

 

[edtdd]--Message édité par potiron--[/edtdd]

mood
Publicité
Posté le 16-01-2002 à 22:18:05  profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation

  [PHP] -> sécurité toute prete (session+cookie)

 

Sujets relatifs
[PHP + MS SQL SERVER] : garder des 0 devant un nombre ....[PHP]Gérer Login/Mot de Passe.
Php, Perl, Java, C#, ASP.Net ...[Serveur Web] IIS + Php/Mysql
PHP vs ASPPhp : comment transfomer une date "aaaa-mm-jj hh:minmin:ss"
[PHP-MySQL] mon form maison[PHP] formulaire d' inscription
Quel hebergeur gratuit pour un site en PHP?Problème PHP
Plus de sujets relatifs à : [PHP] -> sécurité toute prete (session+cookie)


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR