Bonsoir,
Voilaà j'ai un fichier texte externe nommé identif_ens.txt et contenant les login et mots de passe permettant de se logguer à une page, ce fichier a la forme :
azerty;123456
toto;titi25
Par ailleurs pour tester la validité du login j'ai développé un script qui teste si le champs login de mon formulaire d'accès et le champs pass sont correct. Pour cela j'envisage de lire à l'ntrée dans le script le fichier identif_ens.txt, de construire un tableau associatif $tab et ensuite d'effectuer un test tel que :
si (strcmp($tab[$login], $pass) ==0) alors l'accès est possible
Voici le code entier :
$tab = array ();
// lecture du fichier contenat les identifications et construction du tableau interne
$fic = fopen("identif_ens.txt","r");
do{
$ligne = fgets($fic, 4096);
$element = explode (";",$ligne);
$id = $element[0]; echo $id."=".$element[0];
$p = $element[1]; echo $p."=".$element[1]."<br>";
$tab["$id"] = $p;
// Mon problème réside sur cette ligne voir plus bas
echo $tab["$id"]." = ".$p."<br>";
}while(!feof($fic));
?>
<html>
<head>
<title> Identification enseignant </title>
</head>
<body>
<?
if(empty($pass)){
echo "<font color='#ff0000'><p> Vous devez entrer un mot de passe ! </p></font>";
}else{
if(strcmp($tab[$login],$pass) == 0){
echo "<p> login et password correct </p>";
session_start();
echo "<a href='creer.php'>Créer un QCM</a>";
}else{
echo "<p> login et password incorrect </p>";
}
}
?>
</body>
</html>
La ligne que j'ai commenté en rouge : refuse de me construire l'élément de tableau associatif.
La ligne
echo implanté en dessous pour vérification de l'implémentation me retourne même : ph51cn08 = ph51cn08 c'est à dire deux fois $p de passé en paramètre.
Dès lors comment puis-je faire pour que cette boucle me génère une association valide ?
Merci de votre aide.
Ph. Sautreau