Securite en PHP
Résolu
shreek69
Messages postés
228
Date d'inscription
Statut
Membre
Dernière intervention
-
Nabla's Messages postés 18203 Date d'inscription Statut Contributeur Dernière intervention -
Nabla's Messages postés 18203 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Voila j'ai fait un site en php et il marche bien mais le probleme c'est qu'a un moment j'ai mi un lien vers une autre page que j'ai cree (mais ce lien ne se voit que si on est connecter via mon formulaire) bon jusque la sa va
MAIS le probleme si on tape l'adresse http://monsite.autrepage LA SA MARCHE AUSSI donc sans etre connecter si on connait le nom de mon fichier bun on peut y aller
comment je pourrai faire pour securise cette page
MERci a tout ceux qui repondront
Voila j'ai fait un site en php et il marche bien mais le probleme c'est qu'a un moment j'ai mi un lien vers une autre page que j'ai cree (mais ce lien ne se voit que si on est connecter via mon formulaire) bon jusque la sa va
MAIS le probleme si on tape l'adresse http://monsite.autrepage LA SA MARCHE AUSSI donc sans etre connecter si on connait le nom de mon fichier bun on peut y aller
comment je pourrai faire pour securise cette page
MERci a tout ceux qui repondront
A voir également:
- Securite en PHP
- Question de sécurité - Guide
- Votre appareil ne dispose pas des correctifs de qualité et de sécurité importants - Guide
- Mode securite - Guide
- Easy php - Télécharger - Divers Web & Internet
- Clé de sécurité windows 10 gratuit - Guide
15 réponses
au debut de ton fichier autrepage, tu n as cas verifier ´si la personne est connectée en faisant un truc du genre if(isset($_SESSION['login'])) {toncode} else {echo "va te faire voir, espion" ;)}
Merci mais sa saye je l'ai fait j'ai un petit formulaire et c bon
mais si je rentre l'url complete ji accede aussi et sa je ne veut pas pour la securite de mes pages
mais si je rentre l'url complete ji accede aussi et sa je ne veut pas pour la securite de mes pages
ha,, ce n est pas une question de contenu a afficher ou pas, c est une question que tu ne veux pas qu il sache que la page existe ?
NON c'est pas sa en faite j'ai une page avc un formulaire si le formulaire est bien rempli la personne est donc connecté et a acces a des nouvelle rubriques et un lien vers une autre page
mai le prob si quelqu'un arrive comme sa et met en url http://monsite/PAGEPRIVE
bun ma page s'ouvre et c'est sa le prob on peut y aller sans avoir ete connecter au prealable
mai le prob si quelqu'un arrive comme sa et met en url http://monsite/PAGEPRIVE
bun ma page s'ouvre et c'est sa le prob on peut y aller sans avoir ete connecter au prealable
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
ok
quand tu verifies si le formulaire est bien rempli, es ce que tu crée unse session pour l utilisateur ?
quand tu verifies si le formulaire est bien rempli, es ce que tu crée unse session pour l utilisateur ?
Non ji arrive pas du tt g tt essai avc les sessions sa marche pas du tt
ji ai bien mi avan tt code mais sa marche pas
ji ai bien mi avan tt code mais sa marche pas
si tu n utilises pas les sessions, tu n as aucune chance d identifier de maniere efficasse si l utilisateur a bien rempli le formulaire ou pas (c est un formulaire login / mot de pass ?)
au debut de CHACUNE de tes pages utilisant les sessions, tu mets session_start(). il faut que ce soit la toute premiere ligne de code, avant meme le HTML !!! car la session est envoyé dans l entete HTTP (la partie qui est envoyé avant ta page internet)
ensuite, quand ton traitement de formulaire tu accepte le mec, tu lui mets
$_SESSION['login']="toto";
tu as donc la page de ton formulaire et la page a proteger qui doivent contenir le sesssion_start
au debut de CHACUNE de tes pages utilisant les sessions, tu mets session_start(). il faut que ce soit la toute premiere ligne de code, avant meme le HTML !!! car la session est envoyé dans l entete HTTP (la partie qui est envoyé avant ta page internet)
ensuite, quand ton traitement de formulaire tu accepte le mec, tu lui mets
$_SESSION['login']="toto";
tu as donc la page de ton formulaire et la page a proteger qui doivent contenir le sesssion_start
OUI tout sa j'ai essaieye deja mais sa me met des erreurs regarde mon code source:
Voici ma 1ere page:
<?php session_start(); ?>
<html>
<table>
<tr>
<td width="102"><strong>Login</strong></td>
<td width="267"><label>
<input name="login" type="text" size="20" />
</label></td>
</tr>
<tr><td colspan="2"> </td></tr>
<tr>
<td height="41"><strong>Mot de passe</strong></td>
</tr>
</table>
<?php
$connexion=mysql_pconnect("http://..../",".....");
if( ! $connexion ) echo "Impossible de se connecter";
mysql_select_db(".....");
$login = $_POST['login']; //Stocker le login entré par l'utilisateur ds une variable
$d=mysql_query("SELECT Niveaux_acces FROM identification WHERE Login='$login'");
$yy=mysql_fetch_object($d);
$verif_niveaux_acces=($yy->Niveaux_acces);
$_SESSION['Niveau']=$verif_niveaux_acces;
//la si je fais echo de $_sess... c bon j'ai le bon resultat (pour te dire que sa marche)
if (($login==$verif_login)
{echo "bonjour"};
else {echo"au revoir"};
</html>
Voici ma deuxieme:
<?php
session_start();
$droit=($_SESSION['Niveau']); la si je fais un echo de $_se... je n'ai rien
?>
<html>
ensuite la du code html pas important
J'obtien sa comme ereur pour la ligne 1:
Warning: session_start() [function.session-start]: open
et
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (
Voici ma 1ere page:
<?php session_start(); ?>
<html>
<table>
<tr>
<td width="102"><strong>Login</strong></td>
<td width="267"><label>
<input name="login" type="text" size="20" />
</label></td>
</tr>
<tr><td colspan="2"> </td></tr>
<tr>
<td height="41"><strong>Mot de passe</strong></td>
</tr>
</table>
<?php
$connexion=mysql_pconnect("http://..../",".....");
if( ! $connexion ) echo "Impossible de se connecter";
mysql_select_db(".....");
$login = $_POST['login']; //Stocker le login entré par l'utilisateur ds une variable
$d=mysql_query("SELECT Niveaux_acces FROM identification WHERE Login='$login'");
$yy=mysql_fetch_object($d);
$verif_niveaux_acces=($yy->Niveaux_acces);
$_SESSION['Niveau']=$verif_niveaux_acces;
//la si je fais echo de $_sess... c bon j'ai le bon resultat (pour te dire que sa marche)
if (($login==$verif_login)
{echo "bonjour"};
else {echo"au revoir"};
</html>
Voici ma deuxieme:
<?php
session_start();
$droit=($_SESSION['Niveau']); la si je fais un echo de $_se... je n'ai rien
?>
<html>
ensuite la du code html pas important
J'obtien sa comme ereur pour la ligne 1:
Warning: session_start() [function.session-start]: open
et
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (
il sont coupés les messages d erreur...
le 2 eme veut dire que tu as deja envoyé du contenu. verifie que ton <? session_start();
est bien EN TOUT TOUT TOUT debut de ton fichier. tu n as meme pas le droit de mettre un espace ou un saut de ligne avant!!!!
tu test en local ou sur un serveur internet public ?
le 2 eme veut dire que tu as deja envoyé du contenu. verifie que ton <? session_start();
est bien EN TOUT TOUT TOUT debut de ton fichier. tu n as meme pas le droit de mettre un espace ou un saut de ligne avant!!!!
tu test en local ou sur un serveur internet public ?
ha ben voila, il fallait le dire...
les sessions ne sont pas activé par defaut chez free
http://www.commentcamarche.net/forum/affich 2146318 free fr session php
regarde le leiin pour les activer: tu doit creer le reprtoire sessions a la racine de ton site
les sessions ne sont pas activé par defaut chez free
http://www.commentcamarche.net/forum/affich 2146318 free fr session php
regarde le leiin pour les activer: tu doit creer le reprtoire sessions a la racine de ton site
A ok grave merci
DONC si j'ai bien compri je cree un fichiers sessions et je le met dans le serveur de free????
DONC si j'ai bien compri je cree un fichiers sessions et je le met dans le serveur de free????
non
tu crée un DOSSIER, UN REPERTOIRE, DIRECTORY ... nommé sessions, il doit etre vide, et a la racine de ton site
tu crée un DOSSIER, UN REPERTOIRE, DIRECTORY ... nommé sessions, il doit etre vide, et a la racine de ton site