Page 1 sur 1

Récupérer et tester une chaine de caractères dans un fichier

Posté : 27 nov. 2006, 13:51
par leo93
Bonjour,

Souhaitant réaliser un fichier verif_pass.php permettant de tester les login/password/droits utlisateurs SANS utiliser de BDD (utilisation d'un fichier .txt), j'aimererais connaître la manip consistant à récupérer puis à tester les éléments de la chaine (séparés par :) et de les comparer à ceux entrés via le formulaire (login, password).

ex du contenu du fichier.txt

login1:pass1:0
login2:pass2:1

...


Merci !

Posté : 27 nov. 2006, 14:32
par zeus
Bonjour,

Pour lire le fichier, il existe la fonction file() qui extrait le contenu d'un fichier et le place 1 ligne par indice.

Ensuite, tu peut executer une fonction comme array_map() qui va appliquer une fonction sur chaque ligne du tableau obtenu.

Cette fonction personnelle appliquée par array_map() devra utiliser un explode() sur le caractère ':' afin de séparer les différentes parties de chaque ligne et mettre les différents résultats dans des cases de tableau.
ATTENTION : la fonction file() conserve le caractère de fin de ligne '\r'. Il est donc très prudent d'appliquer un trim() sur chaque ligne du tableau avant traitement

Le tableau final pourra etre de cette forme :
membres[$login]['pass'] = $pass;
membres[$login]['actif'] = $actif; //A supposer que le 0 ou 1 correspondent à ça ...
Ensuite, pour vérifier qu'un login existe, tu peut utiliser
if (array_key_exists($login, $membres))
Et pour vérifier le mot de passe :
if ($pass_saisi == $membres[$login_saisi]['pass'])
Voilà, avec tout ça, tu devrait pouvoir avancer dans ce que tu demandes ;)