Version complète: sur le forum
Webmaster Hub :
php login dynamique
nolog
jeudi 12 janvier 2006 à 14:45
j'arrive a transmettre le nom par URL mais pour la verification du pass
j'ai un souci voila mon script si quelqu'un peut m'eclairer merci beaucoup
<?php
if ($HTTP_POST_VARS['valider']=="ok")
{
$pass=$_post['pass'];
if(strlen($_post['pass'])>0)
{
switch ($pass)
{
case $row_rsinitfiche['pass']:
header (location:"modifier.php");
break;
default:
echo "mot de passe erroné";
break;
}
}
}
?>
NorSeb
jeudi 12 janvier 2006 à 14:49
Bonjour,
Dans ton script tu utilises indifférement $HTTP_POST_VARS et $_POST (attention aux majuscules).
Il ne me semble pas que tu peux utiliser les deux à la fois... Cela dépend de la configuration et de la version de PHP.
Essaye avec $_POST et tiens nous au courant.

PS : utilise les balises [code] pour poster ton code, ca aide à la lisibilité.
nolog
jeudi 12 janvier 2006 à 14:59
merci norseb
avec la correction des majuscules c'est mieux mais maintenant dès que je tape le mot de passe les deux champs se vident et je reste tjs sur la meme page!!
alors que normalement ca devait fonctionner comme suite
le client qui souhaite changer ses données clique sur "modifier"
la il arrive sur une page login ou son nom est passe par url
il doit juste tapez son mot de passe pour acceder a la page modifier.php
rat-du-net
jeudi 12 janvier 2006 à 17:26
Et pourquoi ne pas utiliser les variables de SESSION ?
Tu met son login ou son id dans la session et tu fais un update du password pour l'id que tu as en SESSION
nolog
vendredi 13 janvier 2006 à 12:13
je vais essayer ca merci beaucoup pour la reponse rat du net!
nolog
vendredi 13 janvier 2006 à 14:45
bonjour;
pour proteger un repertoire par login mdp, je cree un formilaire dans lequel j'insere un tab (login:champ de texte, mdp:champ de texte, bouton:valider)
j'ai le script suivant, apres mon formulaire:
CODE
<?php
if ($HTTP_POST_VARS['valider']=="ok")
{
if (($HTTP_POST_VARS['login']=="toto") AND ($HTTP_POST_VARS['pass'])=="aaa")
{
header("location:gerer_evenement.php");
}else {
$erreurlog=1;
}
}
?>
mais des que saisie "toto","aaa"
je reste ala meme page avec le message d'erreur:
Warning: Cannot modify header information - headers already sent by (output started at c:\sites\music\admin\login.php:6) in c:\sites\music\admin\login.php on line 49
une reponse de votre part m'aiderai beaucoup
Dan
vendredi 13 janvier 2006 à 15:08
C'est parce que ton fichier a déjà envoyé ne fût-ce qu'un caractère au navigateur avant l'appel à la fonction header().
Vérifie que tu n'as pas laissé par exemple une ligne blanche au dessus de ton code php. Il faut que ce code vienne tout au début de ta page.
Dan
nolog
vendredi 13 janvier 2006 à 15:38

super gentil, merci enormement ca marche !
je n'avais pas placé le script au debut de ma page.
j'aurai une deuxieme question si cela ne te derange pas
concernant la protection d'acces avec .htacess
il faut le placer ou ce dernier par rapport au repertoire ou la page a proteger?
Dan
vendredi 13 janvier 2006 à 16:25
Tu le places où tu veux, mais de préférence dans le répertoire qui contient la page.
Et pour le fichier mot de passe, tu peux le mettre hors de l'espace web... c'est plus "sûr".
Vas voir l'article sur le Hub:
Le fichier .htaccessDan
nolog
vendredi 13 janvier 2006 à 16:48
je l'ai lu ce tuto et son premier cours sur .htaccess
j'"essaye de l'appliquer:
j'ai donc mis unfichier.htaccess dans mon repertoire /admin
CODE
AuthUserFile /home/login/sites/restreint/.htpasswd
AuthGroupFile /dev/null
AuthName "Espace Administrateur"
AuthType Basic
<Limit GET POST>
require valid-user
</Limit>
mais quand je verifie en local si mon repertoire demande un login mdp
ce n'est pas le cas
est ce que je dois créer une page index dans le repertoire admin qui contient un formulaire login mdp? ou ca dois ce faire automatiquement avec .htaccess?
et pour .htpasswd, malgré le fait que j'ai enlevé l'extention .rtf avec mon ftp des que je fais couper/coller dans sites/restreint/:il me la remet?est ce normal
merci d'avance de m'aider
Dan
vendredi 13 janvier 2006 à 16:52
Non, ce n'est pas normal. Le fichier doit porter le nom que tu auras défini dans la directive AuthUserFile du fichier .htaccess
S'il te rajoute l'extension .rtf, j'imagine que tu es sous Windows, et dans ce cas le chemin /home/login/sites/restreint/.htpasswd ne sera pas bon...
C'est toujours le problème des fichiers .htaccess en utilisation locale si on n'est pas sous Linux.
Assures-toi aussi que le fichier soit bien au format "texte seul" ... sans les sauts de ligne générés par Word ou tout autre traitement de texte. Le mieux est d'utiliser "notepad.exe", et penser à l'envoyer par ftp en mode "ASCII" et non pas en mode "BINARY".
nolog
vendredi 13 janvier 2006 à 17:08
En fait je travail sous dreamweaver et j'ai installé wamp5 en localhost
je viens de reécrire les fichiers .htaccess (dans dreamweaver j'arrive a enlever l'extension) mais pour .htpasswd il prend l'extension .txt!!
est ce que l'invitation de la fenetre login mdp se fait automatiquement sinon?
nolog
vendredi 13 janvier 2006 à 17:26
du fait que je suis sous windows ,ca ne marcherais pas le protection de mon repertoire??
nolog
samedi 14 janvier 2006 à 12:43
je suis sous windows xp et je teste en local avec wamp5
j'ai du changer dans httpd.conf
AllowOverride (none) en (all)
et apres creation de .htaccess et .htpasswd
j'arrive a voir la fenetre d'identification
mais quand je saisie le login et le mot de passe je ne parviens pas a acceder au repertoire!!
CODE
AuthName "zone réservée"
AuthType Basic
AuthUserFile "c:\wamp\apache\.htpasswd"
require user adil dam
pour le .htpasswd
il prend toujours l'extension .txt dans c:\wamp\apache\
est ce acause de ca que ca bloque??
si un initié peut me filer un coup de main ca serai sympa
Dan
samedi 14 janvier 2006 à 12:50
Crée le fichier au départ de DreamWeaver... enregistre-le et nomme-le .htpasswd.
C'est windows XP qui rajoute une extension, et c'est à cause de cette extension en .txt que cela ne marche pas.
nolog
samedi 14 janvier 2006 à 12:53
comment puis je faire pour que ca marche stp
Antoine Cailliau
samedi 14 janvier 2006 à 12:59
Supprimer l'extension .txt

Pour que ton fichier fonctionne, il faut que le fichier se nomme .htaccess et non .htaccess.txt
nolog
samedi 14 janvier 2006 à 13:01
le s fichiers .htaccess et .htpasswd kje les creent avec le bloc note en suite le htaccess comme il dans le repertoire du site sous dream came permt de changer l'extention (enlever le .txt) mais pour le .htpasswd comme il est en dehors de dreamweaver je n'arrive pas a enlever l'extention.txt al'aide
Antoine Cailliau
samedi 14 janvier 2006 à 13:05
sous windows, dans les options de la fenetre, tu peux (si mes souvenirs sont bons... je ne suis pas sous Windows donc, je ne peux te le certifier) choisir d'afficher les extensions. Tu affiches les extensions et tu renome ton fichier en virant le .txt
nolog
samedi 14 janvier 2006 à 16:45
je ne sais pas comment faire !
si tu peut me detailler la marche a suivre merci
Dan
samedi 14 janvier 2006 à 17:06
CITATION(nolog @ samedi 14 janvier 2006, 13h01)
le s fichiers .htaccess et .htpasswd kje les creent avec le bloc note en suite le htaccess comme il dans le repertoire du site sous dream came permt de changer l'extention (enlever le .txt) mais pour le .htpasswd comme il est en dehors de dreamweaver je n'arrive pas a enlever l'extention.txt al'aide
Merci de rédiger en français correct !
CITATION(Dan @ samedi 14 janvier 2006, 12h50)
Crée le fichier au départ de DreamWeaver... enregistre-le et nomme-le .htpasswd.
C'est windows XP qui rajoute une extension, et c'est à cause de cette extension en .txt que cela ne marche pas.
Je t'ai dit de le faire au départ de Dreamweaver !
webadev
samedi 14 janvier 2006 à 17:36
CITATION(Antoine Cailliau @ samedi 14 janvier 2006, 12h59)
Supprimer l'extension .txt

Pour que ton fichier fonctionne, il faut que le fichier se nomme .htaccess et non .htaccess.txt

Tu peux changer l'extension avec ton client ftp préféré.
- Tu upload ton fichier
- ensuite tu le renome
Hervé
nolog
samedi 14 janvier 2006 à 18:04
j'ai fini par trouver comment afficher les extensions mais des que j'enleve le point txt j'ai le message:
vous devez specifier un nom de fichier
j'arrive a effacer le .txt seulement si j'enleve le point du " ."htpasswd
aidez moi svp
nolog
samedi 14 janvier 2006 à 18:07
au depart de dreameaver ca serait sympa de prciser car moi je ne vois pas ce que tu veux dire par la!!
Dan
samedi 14 janvier 2006 à 18:09
Tu ouvres dreamweaver, cliques (clic-droit) sur le nom du fichier .htpasswd dans la liste des fichiers du site, et choisis "renommer". Là tu pourras le renommer sans l'extension .txt
nolog
samedi 14 janvier 2006 à 18:10
merci herve
comme je test en local je ne peut enlever le.txt avec ftp je pense.
nolog
samedi 14 janvier 2006 à 18:13
mon fichier e.htaccess est placer en dehors du dossier site en cours (dans dreamweaver),dan crois tu que c'est faisable ?
webadev
samedi 14 janvier 2006 à 18:20
Tu peux changer le nom de ton fichier par l'invite de commande.
demarrer >> executer...
tu tapes >> cmd
tu te places dans le repertoire de ton htpasswd.txt
exemple: cd repertoire/sous-rep/
ensuite tu tapes la commande:
ren htpasswd.txt .htpasswd
Hervé
nolog
samedi 14 janvier 2006 à 18:36
merci beaucoup hervé enfin un fichier .htpasswd
j'ai un second probleme: de ma page identification je ne peux toujours pas acceder a ce fameux repertoire !- )
voici mes 2 progs
CODE
AuthName "zone réservée"
AuthType Basic
AuthUserFile "c:\wamp\apache\.htpasswd"
require user adil dam toto
placé dans le repertoire a proteger
.htpasswd
adil: adil
dam: dam
toto: toto
nolog
samedi 14 janvier 2006 à 18:48
et j'ai le message suivant aussi:
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/1.3.33 Server at localhost Port 80
nolog
samedi 14 janvier 2006 à 20:04
y a t il encore quelqu'un ,une lumiere dans m'eclairer??!!
Dan
samedi 14 janvier 2006 à 20:54
Nolog,
Si tu avais lu l'article sur le fichier .htaccess, tu saurais que les mots de passe DOIVENT être encryptés.
Tu aurais même trouvé dans ce même article un outil te permettant d'encoder les mots de passe.
Merci de faire attention à au moins exécuter ce qu'on te recommande, sinon ce n'est même pas la peine de poser les questions.
Merci aussi d'éviter de faire remonter ton post, et de respecter les règles du forum.
Dan
nolog
samedi 14 janvier 2006 à 21:03
Dan,
je suis ici pour me faire epauler, pas pour me faire "gronder" par toi
avec tout mes respect
concernant les mot de passe dans un article ils disait le contraire
et pour "remonter mon post" je ne comprend pas ce que ca veut dire!!!
merci comme meme pour ton aide jusque la
Dan
samedi 14 janvier 2006 à 22:44
Faire "remonter le post" c'est ce que tu as fait en postant à 20H04 en écrivant :
CITATION(nolog @ samedi 14 janvier 2006, 20h04)
y a t il encore quelqu'un ,une lumiere dans m'eclairer??!!
Probablement parce que tu devais penser qu'on n'était pas assez rapides à te répondre.
C'est contraire aux règles du Hub, que je te suggère de lire.
Quant-à "te faire gronder", il suffit de respecter ces règles et cela n'arrivera plus.
Dan
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'information, la mise en page et les images, veuillez
cliquer ici.