mon 1er script php, mot de passe sur page web ; comment faire?

mon 1er script php, mot de passe sur page web ; comment faire? - PHP - Programmation

Marsh Posté le 08-10-2005 à 20:49:58    

bonjour à tous,
 
J'ai un site web et je commence à bien gerer le html.Mais le html ne peux m'aider pour ce que je veux faire : mettre certaines pages protegées par mot de passe sans que l'on puisse voir le mot de passe en clair dans la source de la page...Si vous pouviez m'expliquer comment faire en php ça serait cool.Bon je ne recherche pas non plus la super sécurité mais une sécurité suffisante pour qu'un confirmé ne puisse y rentrer.
 
a+

Reply

Marsh Posté le 08-10-2005 à 20:49:58   

Reply

Marsh Posté le 08-10-2005 à 21:08:58    

L'authentification se fait au niveau du serveur web. Tout cela est étranger à ta source HTML.
 
Si tu as un hébergeur, gratuit ou non, à toi de voir si il offre cette possibilité. P.e. chez Free, il s'agira en gros de modifier un fichier htaccess. Si tu as installé p.e. Apache chez toi, fais une petite recherche là-dessus.


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
Reply

Marsh Posté le 08-10-2005 à 21:16:12    

je suis chez free mais je n'ai pas installé apache...

Reply

Marsh Posté le 08-10-2005 à 21:31:10    

worms91 a écrit :

je suis chez free mais je n'ai pas installé apache...


Dans ce cas, reporte-toi aux pages de Free pour en savoir plus. Tout cela est expliqué.   [:pingouino]


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
Reply

Marsh Posté le 08-10-2005 à 21:51:09    

oki merci

Reply

Marsh Posté le 08-10-2005 à 22:19:05    

Reply

Marsh Posté le 09-10-2005 à 12:15:12    

up !

Reply

Marsh Posté le 09-10-2005 à 13:01:39    

un petite aide :
 
-> Création d'une page login.php (Avec un hébergeur adéquat)
 
[cpp]
<?
$LOGIN = "login";
$MOTDEPASSE = "motdepasse";
if($MOTDEPASSE == "motdepasse" && $LOGIN == "login" )
{
 
}
?>

Reply

Marsh Posté le 09-10-2005 à 13:09:11    

ERREUR JE RECOMMENCE
 

Code :
  1. <?
  2. if($MOTDEPASSE != "motdepasse" || $LOGIN != "login" )
  3. {
  4. ?>
  5. Il faut entrer un mot de passe pour vous connectez à cette page : <br>
  6. <i>Ici le login est 'login' et le mot de passe est 'motdepasse'.</i>
  7. <form action="login.php" method="post">
  8.   Login : <input type="text" name="login"><br>
  9.   Mot de passe : <input type="password" name="motdepasse"><br>
  10.   <input type='submit' name='Envoyer' value="Envoyer">
  11. </form>
  12. <?
  13. } else
  14. {
  15. ?>
  16. Page protégée.
  17. <?
  18. }
  19. ?>


 
Voila si prob réagi.

Reply

Marsh Posté le 09-10-2005 à 14:17:25    

worms91 a écrit :

http://support.free.fr/web/pperso/ [...] acces.html    <- c'est ça que je dois lire et faire ?


OUI.   [:pingouino]


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
Reply

Marsh Posté le 09-10-2005 à 14:17:25   

Reply

Marsh Posté le 09-10-2005 à 19:50:10    

donc je créé un fichier php avec dedans  (ou est ce que je mets la page à proteger , quelle ligne ?)
 
[cpp]
<?
$LOGIN = "monlogin";
$MOTDEPASSE = "monmotdepasse";
if($MOTDEPASSE == "monmotdepasse" && $LOGIN == "monlogin" )
{
 
}
?>
 
puis sur la page (pas celle que je vais proteger mais celle avant la protegée) je mets ça (je colle ça à quel endroit par rapport au lien protegé?)
 
# <?  
# if($MOTDEPASSE != "motdepasse" || $LOGIN != "login" )  
# {  
# ?>
# Il faut entrer un mot de passe pour vous connectez à cette page : <br>
# <i>Ici le login est 'monlogin' et le mot de passe est 'monmotdepasse'.</i>
# <form action="login.php" method="post">
#   Login : <input type="text" name="login"><br>
#   Mot de passe : <input type="password" name="motdepasse"><br>
#   <input type='submit' name='Envoyer' value="Envoyer">
# </form>
# <?
# } else
# {
# ?>
# Page protégée.
# <?
# }

Reply

Marsh Posté le 09-10-2005 à 20:42:50    

Code :
  1. <?
  2. if ( !$_POST["pass"] == "le mdp" OR !$_POST["login"] == "le login" ) {
  3.    echo '<form action="la_pages.php" method="POST">';
  4.    echo 'Login : <input type="text" name="login"> Mot de passe : <input type="password" name="pass">';
  5.    echo '<input type="submit" value="Login"></form>';
  6.    exit;
  7. }
  8. ?>


 
Tu met juste ca en haut du code de ta page et c'est bon.
Par contre ce que je viens de donner là c'est du vite fait...
 
Et puis ya aussi google et tout ses amis les moteurs de recherche qui donnent les réponses, va les voir bordel!


Message édité par dwogsi le 09-10-2005 à 20:43:47

---------------
-- Debian -- Le système d'exploitation universel | Le gras c'est la vie! | /(bb|[^b]{2})/
Reply

Marsh Posté le 09-10-2005 à 21:26:23    

oki merci je vais essayé
pour info google est mon plus grand ami, mais aujourdui il n'a pas voulu me satisfaire...lol

Reply

Marsh Posté le 09-10-2005 à 21:52:35    

j'ai essayé ton code, il doit y avoir un endroit ou ya une faute mais j'ai pas puis voir ou...sinon, , le mdp et le login apparait en clair, c'est normal ou pas ?

Reply

Marsh Posté le 10-10-2005 à 00:03:31    

Tu cherches un script PHP miracle qui te propose un controle des acces a certaines page de ton site mais ca n'existe pas. On ne "securise" pas une partie d'un site avec un script de quelques lignes deposé dans une page au petit bonheur la chance.
 
Comme en plus tu as l'air de n'avoir aucune competance en PHP je te deconseille de realiser ce que tu souhaites a coup de copier/coller a droite et a gauche.
 
Utilise plutot un fichier.htaccess bien configure pour arriver a tes fins. Tu reviendras a PHP quand tu auras plus que des notions dans le langage.

Reply

Marsh Posté le 10-10-2005 à 09:02:22    

afbilou a écrit :

Utilise plutot un fichier.htaccess bien configure pour arriver a tes fins. Tu reviendras a PHP quand tu auras plus que des notions dans le langage.


+1, bordel, j'ai déjà donné la solution. :o


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
Reply

Marsh Posté le 10-10-2005 à 13:24:48    

worms91 a écrit :

j'ai essayé ton code, il doit y avoir un endroit ou ya une faute mais j'ai pas puis voir ou...sinon, , le mdp et le login apparait en clair, c'est normal ou pas ?


Fonctionne chez moi... A part des notice: undefinied variable j'ai pas d'erreur!

sircam a écrit :

+1, bordel, j'ai déjà donné la solution. :o


C'est c'est plus sur si c'est pour protéger plusieurs pages!

Citation :

le mdp et le login apparait en clair, c'est normal ou pas ?


Si tu veux vraiment te lancer dans le php va déjà voir les bases!
Le code php n'est pas envoyé au navigateur donc oui c'est normal.


---------------
-- Debian -- Le système d'exploitation universel | Le gras c'est la vie! | /(bb|[^b]{2})/
Reply

Marsh Posté le 10-10-2005 à 18:02:42    

okioki bon ba jme lance dans le htacess merci a+

Reply

Marsh Posté le 10-10-2005 à 18:46:55    

rocowoodword a écrit :

ERREUR JE RECOMMENCE
 

Code :
  1. <?
  2. if($MOTDEPASSE != "motdepasse" || $LOGIN != "login" )
  3. {
  4. ?>
  5. Il faut entrer un mot de passe pour vous connectez à cette page : <br>
  6. <i>Ici le login est 'login' et le mot de passe est 'motdepasse'.</i>
  7. <form action="login.php" method="post">
  8.   Login : <input type="text" name="login"><br>
  9.   Mot de passe : <input type="password" name="motdepasse"><br>
  10.   <input type='submit' name='Envoyer' value="Envoyer">
  11. </form>
  12. <?
  13. } else
  14. {
  15. ?>
  16. Page protégée.
  17. <?
  18. }
  19. ?>


 
Voila si prob réagi.


Et on fait ça HTML valid et accessibeul siouplé §§§§§
 

<form action="login.php" method="post">
  <div>
    <label for="login">Login :</label><input type="text" name="login" id="login"><br>
    <label for="pass">Mot de passe :</label><input type="password" name="motdepasse" id="pass"><br>
    <input type="submit" name="Envoyer" value="Envoyer">
  </div>
</form>

Reply

Marsh Posté le 11-10-2005 à 19:47:27    

je me suis penché sur les explications de free...très bien explqiué d'ailleur...
Etape 1 : Création d'une table d'utilisateurs
 
Il s'agit de stocker une liste d'utilisateurs et leur mot de passe correspondant dans un fichier.
MON fichier ressemble a cela :
 
martin:PasSw0rd  
 
> Premier champ: le nom de l'utilisateur
> Second champ: le mot de passe en clair
 
Notes:
Vous devez transférer ce fichier en mode ASCII (voir documentation de votre client FTP) pour assurer la conversion des caractères "fin de ligne". <- j'ai transferé avec ce mode tout les fichiers indiqués dans ce tuto
Vous pouvez stocker ce fichier dans n'importe quel répertoire de votre site mais il faudra en spécifier le chemin dans la directive PerlSetVar AuthFile
Assurez-vous de ne pas laisser d'espace ou de tabulations dans ce fichier.
 
 
Etape 2 : Activer la restriction d'accès
 
Pour limiter l'accès aux utilisateurs déclarés dans le fichier passlist (que j'ai nommé autrement pour ne pas qu'il se fasse trouver facilement, d'ailleur pour info il est en .txt, je pense que c'est comme ça qu'il fallait faire.), vous devez créer un fichier .htaccess dans le répertoire que vous souhaitez limiter . <- ça c'est fait
 

Remarques : Sous plate-forme Microsoft Windows, il n'est pas possible de créer directement sur votre ordinateur un fichier portant le nom ".htaccess". Vous devez le créer avec un autre nom, le transférer sur le serveur, puis le renommer. <- ça c'est fait
 
Attention: Le nom du fichier est .htaccess et le point est le premier caractère du nom de fichier. " ce n'est pas une extension de fichier"
 
Exemple : Vous créez un fichier toto.txt dans lequel vous saisissez les paramètres de votre futur fichier .htaccess Vous le copiez sur le serveur (j'ai transferé une fois de plus en ASCII) . Avec votre logiciel FTP renommez le en .htaccess <- c'est fait
 
PerlSetVar AuthFile nomdemondossier/nomdufichierdelistedespass
AuthName "Acces Restreint"
AuthType Basic
require valid-user
 
La commande PerlSetVar désigne le chemin d'accès à la table des utilisateurs. Il est relatif à la racine de votre site Web. Donc si vous avez stocké votre table d'utilisateurs dans le répertoire secret/password/ sous le nom 'maliste.txt', vous devez modifier la directive PerlSetVar AuthFile en conséquence : PerlSetVar AuthFile secret/password/maliste.txt
 
La commande require valid-user autorise tous les utilisateurs valides à télécharger les fichiers du répertoire. Vous pouvez aussi utiliser require user martin sophie pour autoriser uniquement les utilisateurs martin et sophie, mais pas jean. (pour ma part je fais en sorte que tout le monde puisse tout faire, car il n'y aura qu'un seul accès unique)
 
Attention:
Il est fortement conseillé de protéger sa liste de mots de passes en la nommant autrement. (déjà fait) Vous pouvez ainsi la stockez dans un sous-répertoire de votre site Web que vous protégerez en créant un fichier .htaccess dans ce sous répertoire, contenant uniquement la ligne : deny from all (c'est fait)
 
Pouvez vous me dire ce que j'ai pas fais car là je bloque..sur ma page, on me demande le mot de passe et pseudo mais lorsque j'essai de taper sans faute, il me redemande de taper mon mot de passe et rebelote...si j'annule il me met une page d'erreur...est ce du au fait que j'ai protégé un dossier puis protégé un a un les sous dossiers de ce dossier?
 
a+
 
edit: voici le message d'erreur en cas de mauvaise mot de passe, ya pas moyen de rediriger l'internaute vers une page de mon site?
 
Authorization Required
This server could not verify that you are authorized to access the document requested. Either you supplied the wrong credentials (e.g., bad password), or your browser doesn't understand how to supply the credentials required.
 
Apache/ProXad [Sep 2 2005 07:05:39] Server at leskateurdu91.free.fr Port 80
 


Message édité par worms91 le 11-10-2005 à 19:54:10
Reply

Marsh Posté le 11-10-2005 à 20:08:34    

Heu dis... On n'est pas le support Free, ici. :o
 

Citation :

est ce du au fait que j'ai protégé un dossier puis protégé un a un les sous dossiers de ce dossier?


Try and find out ! :o
 

Citation :

ya pas moyen de rediriger l'internaute vers une page de mon site?


Si, RTFM, c'est expliqué dans leur littérature. Similaire au traitement 404 Page not found.

Reply

Marsh Posté le 11-10-2005 à 20:32:16    

voila jai pas regardé sil étai deja donné
<!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>Document sans titre</title>
</head>
 
<body>
<?
if (isset($_POST['pass']))
{
 $pass = $_POST['pass'];    
}
else
{
 $pass = "";  
}
if ( $pass == "toto" )
{
?>
<!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>Document sans titre</title>
</head>
 
<body>
Voici la page protégé par un mot de pass tu peu mettre des codes etc ...
</body>
</html>
<?
}
else
{
?>
<form method="post" action="pass.php">
<input type="text" name="pass">
<input type="submit" value="Ok">
</form>
<?
}
?>
 
</body>
</html>

Reply

Marsh Posté le 12-10-2005 à 19:21:07    

ça correspond à quoi tout ça? ça a un rapport à ce que j'ai fais dernierement ou c'est encore un bout de script php ?

Reply

Marsh Posté le 12-10-2005 à 19:25:24    

Ca c'est un pseudo système de protection de la page à utiliser avec un formulair.


---------------
-- Debian -- Le système d'exploitation universel | Le gras c'est la vie! | /(bb|[^b]{2})/
Reply

Marsh Posté le 12-10-2005 à 19:53:30    

dwogsi a écrit :

Ca c'est un pseudo système de protection de la page à utiliser avec un formulair.


Allez, affranchis-nous. Le PHP, ça pas juste des bouts de code pêchés à gauche et à droite sur le net et qu'on met ensemble ?   [:pingouino]

Reply

Marsh Posté le 12-10-2005 à 20:28:55    

Bien sur que non!


---------------
-- Debian -- Le système d'exploitation universel | Le gras c'est la vie! | /(bb|[^b]{2})/
Reply

Marsh Posté le 12-10-2005 à 20:57:18    

le gars qui y connais rien lol, y a deux types de personnes ceux ki prennent leur code tou fai, et ceux qui essaye de faire tt tt seul et qui sont fier d'eux à la fin !

Reply

Marsh Posté le 12-10-2005 à 21:17:31    

dwogsi a écrit :

Bien sur que non!


Et tu prends encore la peine de répondre à mes boutades ?   [:pingouino]  
 
 
 
greenbecq > Et en Français maintenant ?


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
Reply

Marsh Posté le 13-10-2005 à 09:03:25    

sircam a écrit :

Et tu prends encore la peine de répondre à mes boutades ?   [:pingouino]


Quand tu es encore au taff à 20h30, crois moi, tu a envi de répondre a tout ce qu'il possible de répondre, ca donne un instant de répi avant de reprendre! :)

sircam a écrit :

greenbecq > Et en Français maintenant ?


greenbecq a écrit :

le gars qui y connais rien lol, y a deux types de personnes ceux ki prennent leur code tou fai, et ceux qui essaye de faire tt tt seul et qui sont fier d'eux à la fin !


le gars qui y connais rien lol > Je crois qu'il rit de la situations de ce pauvre garcon, en tout cas sa situation concernant ses rapport avec le php.
 
Sinon pour la suite il distingue les deux types de personnes qui passant par ici :
- Celui qui ne fait pas d'effort pour concevoir son projet, qui pioche des bou de code à droite, à gauche et qui attend qu'on lui pisse la solution.
- Celui qui va apprendre, travailler et se débrouiller tout seul. Celui-là pourra etre fier de son travail une fois au bout!
 
Et je suis entièrement daccord avec lui, d'ailleur le premier type de personne citer précédement ne semble pas être particulièrement aimé par ici.
-----------------------
C'était mon annalyse! lol  :lol:  
Que je suis con des fois...  [:chenaillou]


Message édité par dwogsi le 13-10-2005 à 09:08:57

---------------
-- Debian -- Le système d'exploitation universel | Le gras c'est la vie! | /(bb|[^b]{2})/
Reply

Marsh Posté le 13-10-2005 à 09:34:31    

dwogsi> Gueule de bois du lendemain de la veille ? :D


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
Reply

Marsh Posté le 13-10-2005 à 09:59:30    

sircam a écrit :

dwogsi> Gueule de bois du lendemain de la veille ? :D


 
Ou du surlendemain du jour d'après, en DVD :o


---------------
http://www.alsacreations.com , http://www.openweb.eu.org. Mon CV : http://cv.roane-irkana.net/. Exemple à ne surtout pas suivre : www.worldinternet.be
Reply

Marsh Posté le 13-10-2005 à 10:06:23    

sircam a écrit :

dwogsi> Gueule de bois du lendemain de la veille ? :D


Ca pourrait mais pas assez bu hier soir!

plainsofpain a écrit :

Ou du surlendemain du jour d'après, en DVD :o


 :lol:


---------------
-- Debian -- Le système d'exploitation universel | Le gras c'est la vie! | /(bb|[^b]{2})/
Reply

Marsh Posté le 14-10-2005 à 23:09:43    

je cherche toujours pourquoi a ma page on me demande le mot de passe plusieurs fois d'affilé...

Reply

Marsh Posté le 15-10-2005 à 10:00:51    

worms91 a écrit :

je cherche toujours pourquoi a ma page on me demande le mot de passe plusieurs fois d'affilé...


C'est pour être sûr que c'est bien le bon mot de passe. Une sécurité, quoi.  [:airforceone]


---------------
Now Playing: {SYNTAX ERROR AT LINE 1210}
Reply

Marsh Posté le 15-10-2005 à 16:24:15    

mais c'est plus une sécurité lorsque on me le demande plus de 20 fois d'affilé quand meme !

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed