Multiple mot de passe et utilisateur en PhP

Résolu/Fermé
jb - 17 oct. 2011 à 14:18
romain.b Messages postés 123 Date d'inscription mardi 24 mai 2011 Statut Membre Dernière intervention 6 mars 2018 - 18 oct. 2011 à 10:11
Bonjour,
Je viens d'être propulsé a la maintenance d'un site internet pour un projet. Je n'y connais rien et on m'a passé le bébé du jour au lendemain. Je survis grâce a des copier/coller, des recherches sur google et des forums.
Pour accéder a la partie privative du site, il y a un mot de passe et un identifiant unique.
Par contre, on me demande de créer un identifiant et un mot de passe pour chaque participant au projet.

La seule page qui fait référence a l'identifiant et au mot de passe actuels, contient le code suivant:
<?php
$DB_HOST = 'localhost';
$DB_USER = 'zetzqloi_identifiant';
$DB_PASS = 'mot de passe';
$DB_NAME = 'zetzqloi_ngva';
mysql_connect($DB_HOST, $DB_USER, $DB_PASS) or die ("Unable to select database");
mysql_select_db($DB_NAME) or die ("Unable to select database");
?>

Comment procéder pour agrandir la liste des identifiants et mot de passes pour que chacun des participants puisse en avoir un? Dois-je créer un nouvel User dans MySQL pour chaque participant ?

Comment modifier le code php en conséquence?

Merci par avance de votre aide !!
JB
A voir également:

4 réponses

Super_carotte Messages postés 1419 Date d'inscription mardi 8 janvier 2008 Statut Membre Dernière intervention 27 janvier 2015 127
Modifié par Super_carotte le 17/10/2011 à 14:47
Je viens de relire votre message. Apparement, vous etes actuellement le seul utilisateur du systeme.

Dans ce cas, si vous voulez mettre en place une gestion d'acces un peu plus propre, le mieux serait de créer une table dans votre BDD et d'y mettre un login et mot de passe pour touts les nouveaux users.
Ensuite, coté appli: Une page qui invite l'utilisateur a s'identifier:
Cas 1: la login et mdp indiqué par l'utilisateur existe bien en BDD alors il peut continuer a naviguer sur l'outil.
Cas 2- Mauvais login/pass: L'urilisateur est dégagé.

Pour Vérifier qu'un user est bien loggé, en haut de vos page vous pouvez mettre quelque chose comme ceci:
<?php   
session_start();   
if(!isset($_SESSION['login'])) {   
 ?>   
 <div id="login_pass" align="center">    
       
 <h3 id="title"><br>Vous n'êtes pas autorisé à accéder à cette zone</h3>   
</div>   

<?php   
include('../auth/login.php');   
exit;   
}   
else {   
votre page   
}


Bref, quoi qu'il en soit, pour faire quelque chose d'a peu pres propre, il va falloir vous mettre au PHP.

Regardez de ce coté:
https://openclassrooms.com/fr/courses/918836-concevez-votre-site-web-avec-php-et-mysql
Et plus particulièrement:
https://openclassrooms.com/fr/courses/918836-concevez-votre-site-web-avec-php-et-mysql/913196-tp-page-protegee-par-mot-de-passe

Bonne continuation,
Cordialement,
Benjamin
1
Salut, merci pour le commentaire et les liens...il semble effectivement que je sois forcé de me mettre au PHP...
0
Super_carotte Messages postés 1419 Date d'inscription mardi 8 janvier 2008 Statut Membre Dernière intervention 27 janvier 2015 127
17 oct. 2011 à 14:38
Cette partie ressemble plus a un user utilisé par votre programme pour aller chercher des infos en BDD qu'a une gestion d'accès.
Ce qui me fait penser ça:
1- On ne gere pas un acces a une appli en se basant sur la fait qu'une tentative de connexion BDD echoue,
2- Les partie login et mot de passe ne sont pas des variables dans votre code.

Donc cherchez encore, il y a forcement un autre endroit ou vous avez une gestion d'acces.
0
Merci, je vais encore chercher !!
0
Reivax962 Messages postés 3671 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
Modifié par Reivax962 le 17/10/2011 à 14:41
Bonjour,

Cette page n'est pas la bonne.
En effet, tu fais une confusion entre la connexion à la base de données et la connexion au programme.
Je vais essayer d'être clair...

Ton programme repose sur une base de données : c'est là que sont stockées toutes les informations qu'il utilise. Cette base de données est à accès très restreint. Ainsi, ton programme (l'intranet) connaît un Login et un Mot de passe pour pouvoir y effectuer des requêtes. Ces opérations ne sont pas directement visibles de l'utilisateur.

Par contre, ce que tu dois faire, c'est gérer des identifiants de connexion au programme. Ces identifiants seront gérés par du code PHP et non pas au niveau de la base de données.

Un petit schéma peut-être :
              (1)            (2) 
(Utilisateur) <=> (Intranet) <=> (Base de données)

Ce que tu dois réaliser, c'est sécuriser la connexion (1).
La page que tu as trouvée, c'est pour la connexion (2).

S'il n'y a qu'un seul mot de passe aujourd'hui, je ne suis pas surpris que tu ne le trouves pas facilement... Il est sans doute géré « en dur », peut-être même en Javascript...

Xavier
0
Merci Xavier, je vais chercher comment sécuriser la connexion (1) avec un code PHP.
0
romain.b Messages postés 123 Date d'inscription mardi 24 mai 2011 Statut Membre Dernière intervention 6 mars 2018 16
17 oct. 2011 à 14:42
votre code vous permet d'accéder à votre base de donnée (BDD). C'est dans cette BDD qu'il faut créer une table avec vos accès : par ex:
table membres
champs login, mot de passe, email etc ...
plus d'infos par ex ici http://www.phpdebutant.org/article47.php
0
PHP Elephant, je vais tout ecraser sur mon passage ! Merci pour le lien vers ce tutoriel !!
0
romain.b Messages postés 123 Date d'inscription mardi 24 mai 2011 Statut Membre Dernière intervention 6 mars 2018 16
18 oct. 2011 à 10:11
de rien ! il y a d'autres articles qui vont vous aider à avoir les base php/mysql prenez le temps de bien lire et ensuite ça viendra tout seul, bon courage
0