Bienvenu(e)! Identification Créer un nouveau profil

Recherche avancée

php mot de passe

Envoyé par marc 
php mot de passe
vendredi 30 août 2002 17:19:05
Bonjour, je débute en PHP.
J'aimerais réaliser un Espace Membre.
J'ai commencé mais je bloque sur les conditions.
Dites-moi si déjà je suis dans le vrai ou pas.
J'ai un fichier (fonctions.inc) avec le code :
<body>
<?php
function form_login_member($action, $login_def, $pass_def, $sub_name, $reset_name, $login_txt, $pass_txt)
{
echo "<table>\n";
echo "<form action=\"$action\" method=\"post\" name=\"form_login_member\">\n";
echo "<tr>\n";
echo "<td>$login_txt</td>\n";
echo "<td><input type=\"text\" name=\"login\" size=20 maxlength=42></td>\n";
echo "</tr>\n";
echo "<tr>\n";
echo "<td>$pass_txt</td>\n";
echo "<td><input type=\"password\" name=\"pass\" size=20 maxlenght=12></td>\n";
echo "</tr>\n";
echo "<tr>\n";
echo "<td>\n";
echo "<input type=\"submit\" name=\"$sub_name\" value=\"Envoyer\">\n";
echo "<input type=\"reset\" name=\"$reset_name\" value=\"Annuler\">\n";
echo "</td>\n";
echo "</tr>\n";
echo "</form>\n";
echo "</table>\n";
}

?>
</body>


J'ai mon fichier (PHP) qui appelle le fichier (fonctions.inc):

<body>
<?php

include ("fonctions.inc"winking smiley;

$action = "membres.php"; //Lien vers lequel l'internaute se dirige si il a bien le bon login et le bon mot de passe.
$login_def = "renato"; //Définition du login.
$pass_def = "gr15ew31"; //Définition du mot de passe.
$sub_name = "Envoyer"; //Bouton Envoyer
$reset_name = "Annuler"; //Bouton Annuler
$login_txt = "Mettez votre nom :"; //Texte pour le mot Login
$pass_txt = "Mot de passe :"; //Texte pour mot de passe

form_login_member($action, $login_def, $pass_def, $sub_name, $reset_name, $login_txt, $pass_txt);

?>

</body>




Mais mon souci c'est que à ce stade même si je ne mets rien dans les champs et qu'on valide, on va quand même à la page suivante.

Il me faut une condition comme quoi c'est le bon login et le bon mot de passe.
Et là, c'est le brouillard.
Merci de votre aide. A + Marc
Re: php mot de passe
vendredi 30 août 2002 18:27:09
salut,
ton script dirige les gens vers "membres.php" parce dans ton form tu as mis action="membres.php".... ici il vaut mieux mettre
pour action action="<?$PHP_SELF";?>"

et dans ton script mettre un truc du genre
<?
if ($login_txt==$login_def) && ($pass_txt==$pass_def)
{
echo "<a href='membres.php'>Vous pouvez accéder à la zone</a>";
}
else
{
echo "Accés refusé...";}
?>

cela dit, php permet de coder les mots de passe, car des mots de passe en clair comme ça...... sinon tu as aussi les htaccess...... j'ai fait un article là-dessus.......
A+
Re: php mot de passe
vendredi 30 août 2002 18:28:19
tu ne manqueras pas de noter qu'il faut mettre une double parenthèse à la condition :
if (($login_txt==$login_def) && ($pass_txt==$pass_def))
Lola
Re: php mot de passe
samedi 31 août 2002 16:07:02
Quelle est le rôle de action="<?$PHP_SELF";?>" ?

Moi j'ai fait un <form method = post action = BP.php> dans un formulaire de saisie et dans BP.php je fais un traitement des données saisies (insert into etc...).
Mais je ne veux pas que l'utilisateur voit ce fichier apparaître (car ça fait apparaître une fenêtre blanche). Y'a t'il un moyen de traiter BP.php en invisible ? Ou alors faut'il tout simplement mettre un include au lieu d'un <form action=...> ?

Merci
Re: php mot de passe
samedi 31 août 2002 19:48:15
en fait quand tu mets action="<?$PHP_SELF;?>" tu fais appel au script php contenu dans la page même qui contient le formulaire... donc pour traiter ton fichier en "invisible" tu le mets directement dans la page de ton formulaire et tu l'appelles par $PHP_SELF
le fait de mettre action="traitement.php" dans ton formulaire va diriger ce même formulaire vers la page "traitement.php" justement pour y être....traité........
a+
Re: php mot de passe
lundi 2 septembre 2002 21:16:09
Bonjour, je nage....

1 - Je ne comprends pas pourquoi tu mets la ligne :

echo "<a href='membres.php'>Vous pouvez accéder à la zone</a>";

Car normalement si c'est les bons "login et mot de passe" on file direct à la zone Membres. Autrement si on laisse ta ligne on est obligé de cliquer 2 fois en fait.
Une fois sur le bouton et une autre sur la ligne "Vous pouvez accéder...".

2 - De toute façons, j'ai un message d'erreur sur la ligne "else".

3 - Autrement j'ai mis ton <?$PHP_SELF";?>" dans mon fichier (inc) :
echo "<form action=\"$PHP_SELF\" method=\"post\" name=\"form_login_member\">\n";



4 - Je te mets le code du fichier (php).


<?

include ("fonctions.inc"winking smiley;

$login_def = "renato"; //Définition du login.
$pass_def = "gr15ew31"; //Définition du mot de passe.
$sub_name = "Envoyer"; //Bouton Envoyer
$reset_name = "Annuler"; //Bouton Annuler
$login_txt = "Mettez votre nom :"; //Texte pour le mot Login
$pass_txt = "Mot de passe :"; //Texte pour mot de passe

form_login_member($action, $login_def, $pass_def, $sub_name, $reset_name, $login_txt, $pass_txt);
?>
<?
//Si login_txt est strictement égal à login_def et si pass_txt est égal à pass_def.
//Alors vous pouvez accéder à la zone membres.
if (($login_txt==$login_def) && ($pass_txt==$pass_def));
{
echo "<a href='membres.php'>Vous pouvez accéder à la zone</a>";
}
else //Autrement
{
//L'accès vous est refusé.
echo "Accès refusé...";
}
?>



PS :

$pass_txt //Cette variable correspond aux mots "Mot de passe" visible à gauche du champ texte.

$pass_def //Celle-ci correspond au champ texte lui-même.


Comment on peut dire que $pass_txt==$pass_def alors que c'est 2 choses différentes (une ligne de texte écrite et un champ texte) ?

Comme tu vois c'est encore le brouillard.

A +
lola
Re: php mot de passe
lundi 2 septembre 2002 22:28:38
Mais moi, ce que je souhaite en fait, c'est que mon fichier de action=
soit traité en invisible tout en gardant DEUX fichiers distints. C'est à dire qu'il apparaisse un quart de seconde puis qu'on revienne au formulaire d'origine, ou qu'il n'apparaisse pas du tout, je ne sais pas ce qui est possible en php...
merci
Re: php mot de passe
lundi 2 septembre 2002 23:51:19
slt,
pour marc : oups, désolé, j'avais po vu la différence, je croyais qu'il s'agissait bien des champs à remplir ! une de tes erreurs, par contre yawning smiley)) c'est d'avoir mis un point-virgule aprés la condition !!
donc

<?
//Si login_txt est strictement égal à login_def et si pass_txt est égal à pass_def.
//Alors vous pouvez accéder à la zone membres.
if (($login==$login_def) && ($pass==$pass_def))
{
echo "<a href='membres.php'>Vous pouvez accéder à la zone</a>";
}
else //Autrement
{
//L'accès vous est refusé.
echo "Accès refusé...";
}
?>

pour action c'est <form action="<?$PHP_SELF;?>" method="post">

maintenant si tu veux pas voir de <a href='.....>....</a> parce que ça fait deux clics yawning smiley) et bien tu utilises un header.....

<?
$login_def = "renato"; //Définition du login.
$pass_def = "gr15ew31"; //Définition du mot de passe.
$sub_name = "Envoyer"; //Bouton Envoyer
$reset_name = "Annuler"; //Bouton Annuler
$login_txt = "Mettez votre nom :"; //Texte pour le mot Login
$pass_txt = "Mot de passe :"; //Texte pour mot de passe

if ($sub_name){//si on clique le bouton valider
if (($pass==$pass_def)&&($login==$login_def))
{header("location:membres.php"winking smiley;}
else {header("location:ailleurs.html"winking smiley;}
}
?>

pour lola,
pour revenir au formulaire d'origine, donc à la page d'origine aprés traitement, je pense pas qu'il y ait plusieurs possibilités. si j'étais toi, j'utiliserais javascript à la fin de mon script php
<?
...........
............
echo "<script language='javascript'>
history.go(-1);
</script>";
?>
Re: php mot de passe
mardi 3 septembre 2002 08:34:17
Re_Bonjour,

Je repare à zéro avec tes indications. Avant tout dis-moi si j'ai raison.

Moi j'ai :

1 page (fonctions.inc) avec ce code :

<body>
<?php

function form_login_member($action, $login, $pass, $sub_name, $reset_name, $login_txt, $pass_txt)
{
echo "<table>\n";
echo "<form action="<?$PHP_SELF;?>" method="post">
echo "<tr>\n";
echo "<td>$login_txt</td>\n";
echo "<td><input type=\"text\" name=\"login\" size=20 maxlength=42></td>\n";
echo "</tr>\n";
echo "<tr>\n";
echo "<td>$pass_txt</td>\n";
echo "<td><input type=\"password\" name=\"pass\" size=20 maxlenght=12></td>\n";
echo "</tr>\n";
echo "<tr>\n";
echo "<td>\n";
echo "<input type=\"submit\" name=\"sub_name\" value=\"Envoyer\">\n";
echo "<input type=\"reset\" name=\"reset_name\" value=\"Annuler\">\n";
echo "</td>\n";
echo "</tr>\n";
echo "</form>\n";
echo "</table>\n";
}

?>
</body>
</html>



Une autre page (index.php) qui appelle la page "fonctions.inc" avec ce code :


<?
include ("fonctions.inc"winking smiley;
$login_def = "renato"; //Définition du login.
$pass_def = "gr15ew31"; //Définition du mot de passe.
$pass //Le champ de formulaire pour le password.
$login //Le champ de formulaire pour le login.
$sub_name = "Envoyer"; //Bouton Envoyer
$reset_name = "Annuler"; //Bouton Annuler
$login_txt = "Mettez votre nom :"; //Texte pour le mot Login
$pass_txt = "Mot de passe :"; //Texte pour mot de passe

if ($sub_name){//si on clique le bouton valider
if (($pass==$pass_def)&&($login==$login_def))
{header("location:membres.html"winking smiley;}
else {header("location:ailleurs.html"winking smiley;}
}
?>



Et 1 page "membres.html" si on a le bon mot de passe.

Et 1 page 'ailleurs.html" si on n'a pas le bon mot de passe.


Dans la page (index.php) où est-ce que je mets le code, entre les balises <body> où juste au-dessus du 1er <body>.

Allez on touche au but, courage...
A +
Re: php mot de passe
mardi 3 septembre 2002 10:20:27
re,
bon si tu veux vraiment partir de zéro (enfin yawning smiley)) commence par abandonner tes fonctions en anglais que t'as pas créees........ lol essaye ceci et rien que ceci :

<?
$login_def = "renato"; //Définition du login.
$pass_def = "gr15ew31"; //Définition du mot de passe.
if (isset($sub_name)){//si on clique le bouton valider
if (($pass==$pass_def)&&($login==$login_def))
{header("location:membres.html"winking smiley;}
else {header("location:ailleurs.html"winking smiley;}
}
?>
<html>
<body>
<form action="<?$PHP_SELF;?>" method="post">
<table>
<tr>
<td><input type="text" name="login" size=20 maxlength=42>
</td></tr>
<tr>
<td><input type="password" name="pass" size=20 maxlenght=12></td>
</tr>
<tr>
<td>
<input type="submit" name="sub_name" value="Envoyer">
<input type="reset" name="reset_name" value="Annuler">
</td>
</tr></table></form>
</body>
</html>
Re: php mot de passe
mardi 3 septembre 2002 12:08:25
Allez te voilà débarrassé pour ce pu.... de mot de passe.

Sans abuser de ton temps, j'ai réalisé un formulaire avec récupération de données de l'internaute, tout baigne.

Mais en retour je me retrouve avec "httpd" dans ma boîte de réception Outlook Express :

De :httpd
Objet : Demandes de renseignements
Date : 02/09/02

C'est quoi ce httpd ?
Est-ce que je peux avoir le choix de mettre autre chose plus explicite ?
Encore merci pour ton aide et surtout ta patience.

On se cotisera à Noël pour ton cadeau.

A + Marc.
Re: php mot de passe
mardi 3 septembre 2002 14:38:13
pour le mot de passe, juste un truc : si qqn connaît l'adresse et tape un truc du genre [tonsite.com] dans la barre d'adresse, rien dans ton script ne lui interdit d'y accéder !!!!! tu devras y ajouter des sessions........ c'est une autre histoire, mais pas si compliquée.....

pour le httpd, ça c'est un truc d'apache en théorie.. et les indiens et moi ça pas trop mon truc.... je rigole yawning smiley)) cela dit ça relève + de la config de outlook que d'autre chose, je pense, à moins que ton formulaire comporte des trucs spéciaux... faut voir...
Re: php mot de passe
jeudi 20 novembre 2008 21:08:32
je comprends ke dale a ske vous dites alor..soyez compréensif sil vou plé#air##etonne##clin#repondé moi vit



merci antoine



jaimerais savoir ou c'est: --&gt;demarrer et --&gt; executer !!


merci davance repondez vite svp !!
Re: php mot de passe
jeudi 20 novembre 2008 21:09:18
alez GROUI !! putin#bof##grrr#



jaimerais savoir ou c'est: --&gt;demarrer et --&gt; executer !!


merci davance repondez vite svp !!
Re: php mot de passe
jeudi 20 novembre 2008 21:10:31
[www.odebi.org] a écrit:

> Bonjour, je débute en PHP.
> J'aimerais réaliser un Espace Membre.
> J'ai commencé mais je bloque sur les conditions.
> Dites-moi si déjà je suis dans le vrai ou pas.
> J'ai un fichier (fonctions.inc) avec le code :
> <body>
> <?php
> function form_login_member($action, $login_def, $pass_def,
> $sub_name, $reset_name, $login_txt, $pass_txt)
> {
> echo "<table>\n";
> echo "<form action=\"$action\" method=\"post\"
> name=\"form_login_member\">\n";
> echo "<tr>\n";
> echo "<td>$login_txt</td>\n";
> echo "<td><input type=\"text\" name=\"login\" size=20
> maxlength=42></td>\n";
> echo "</tr>\n";
> echo "<tr>\n";
> echo "<td>$pass_txt</td>\n";
> echo "<td><input type=\"password\" name=\"pass\" size=20
> maxlenght=12></td>\n";
> echo "</tr>\n";
> echo "<tr>\n";
> echo "<td>\n";
> echo "<input type=\"submit\" name=\"$sub_name\"
> value=\"Envoyer\">\n";
> echo "<input type=\"reset\" name=\"$reset_name\"
> value=\"Annuler\">\n";
> echo "</td>\n";
> echo "</tr>\n";
> echo "</form>\n";
> echo "</table>\n";
> }
>
> ?>
> </body>
>
>
> J'ai mon fichier (PHP) qui appelle le fichier (fonctions.inc):
>
> <body>
> <?php
>
> include ("fonctions.inc"winking smiley;
>
> $action = "membres.php"; //Lien vers lequel l'internaute
> se dirige si il a bien le bon login et le bon mot de passe.
> $login_def = "renato"; //Définition du login.
> $pass_def = "gr15ew31"; //Définition du mot de passe.
> $sub_name = "Envoyer"; //Bouton Envoyer
> $reset_name = "Annuler"; //Bouton Annuler
> $login_txt = "Mettez votre nom :"; //Texte pour le mot Login
>
> $pass_txt = "Mot de passe :"; //Texte pour mot de passe
>
> form_login_member($action, $login_def, $pass_def, $sub_name,
> $reset_name, $login_txt, $pass_txt);
>
> ?>
>
> </body>
>
>
>
>
> Mais mon souci c'est que à ce stade même si je ne mets rien
> dans les champs et qu'on valide, on va quand même à la page
> suivante.
>
> Il me faut une condition comme quoi c'est le bon login et le
> bon mot de passe.
> Et là, c'est le brouillard.
> Merci de votre aide. A + antoine



jaimerais savoir ou c'est: --&gt;demarrer et --&gt; executer !!


merci davance repondez vite svp !!
Re: php mot de passe
jeudi 20 novembre 2008 21:11:09
REPONDEZ !!



jaimerais savoir ou c'est: --&gt;demarrer et --&gt; executer !!


merci davance repondez vite svp !!
Seuls les utilisateurs enregistrés peuvent poster des messages dans ce forum.

Cliquez ici pour vous connecter