Tom's Guide > Forum > Programmation > perl avec lecture de fichier

perl avec lecture de fichier

Forum Programmation : perl avec lecture de fichier

TomsGuide.com : 800 000 inscrits répondent à toutes vos questions high-tech et informatique. Pour obtenir de l'aide, inscrivez-vous gratuitement !
Mot :    Pseudo :           
 

bonjour,j'ai un exercice à résoudre et je suis bloqué.je dois écrire
programme perl qui me permet de vérifier si l'utilisateur qui entre son code
d'utilisateur et son mot de passe est inscrit dans notre fichier txt.
dans ce fichier,les utilisateurs déja inscrits sont rangés par ligne:sur la premiére ligne,
il ya le code d'utilisateur de paul(c un exemple),son mot de passe,son e-mail,son sexe,sa ville,son pays.
et ainsi de suite pour tous ceux qui sont inscrits.si l'utilisateur entre
son code et son mot de passe,on doit parcourire le fichier pour voir s'il est inscrit.
s'il l'est,il reçoit une page avec les informations le concernant,dans le cas contraire,
c'est un autre message qu'il reçoit.j'ai commencé le travail en utilisant une boucle foreach
mais à chaque fois c'est le méme message qui s'affiche,méme si l'utilisateur n'existe pas.
Merci d'avance pour votre aide

Liens sponsorisés
Inscrivez-vous ou connectez-vous pour masquer ceci.

salut,
commence par montrer ton code source!

Ps:
Je n'ai jamais écris de programme en perl, juste modifié un source pour traiter un fichier log (squid)

Répondre à elendilm

salut,voici le programme perl que j'ai fait mais le probléme c'est que ça affiche tout le temps les mêmes infos même si l'utilisateur n'existe pas



#!c:/Perl/bin/perl.exe
print "Content-type: text/html\n\n";
use CGI::Carp qw(fatalsToBrowser warningsToBrowser);
use CGI 'param';
print"<html><body><table border=1 width=400 align=center CELLPADDING =3 ><tr><td>";
$utilisateur = param ('Code_utilisateur');
$Mot_de_passe = param ('Mot de passe');
open (BASE_DONNEES,"utilisateurs.txt" );
while (<BASE_DONNEES> ) {
$_ =~ s/[\r\n]//g;
$ligne = $_;
($code,$pwd,$prenom,$nom,$age,$sexe,$courriel,$ville,$pays ) =
split(':',$ligne);
close (BASE_DONNEES);
if (($utilisateur=$code) && ($Mot_de_passe=$pwd)){
print"<table border=0 width=600 height=200 cellspacing=5 CELLPADDING =3><tr>
<td colspan=2 align=center><b>Informations concernant le code d'utilisateur</b> <i>$utilisateur</i></td>
</tr>
<tr>
<td align=right> <b>Nom:</b></td>
<td> $nom </td>
</tr>
<tr>
<td align=right><b>Pr&eacutenom:</b></td>
<td> $prenom </td>
</tr>
<tr>
<td align=right><b>&Acircge:</b></td>
<td> $age </td>
</tr>
<tr>
<td align=right><b>Sexe:</b></td>
<td> $sexe </td>
</tr>
<tr>
<td align=right><b>Courriel:</b></td>
<td> $courriel </td>
</tr>
<tr>
<td align=right><b>Ville:</b></td>
<td> $ville </td>
</tr>
<tr>
<td align=right><b>Pays:</b></td>
<td> $pays </td>
</tr>
<tr>
<td colspan=2 align=center><a href=http://localhost/Exercice4.html>Retour au formulaire pour accéder à vos données personnelles</a></td>
</tr>
</table>";
}
else{
print"erreur";
}

print"</td></tr></table></body></html>";


}



merci d'avance

Répondre à agaseck
Tom's Guide > Forum > Programmation > perl avec lecture de fichier
Aller à :

Il y a 2672 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.

Attention

Vous allez répondre sur un sujet resté inactif pendant plus de 6 mois.
Assurez-vous d'apporter des éléments nouveaux à la discussion avant de poursuivre.

Répondre Annuler
Liens