IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Perl Discussion :

probleme dans mon script


Sujet :

Langage Perl

  1. #1
    Inactif
    Inscrit en
    Juillet 2006
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 18
    Par défaut probleme dans mon script
    bonjour a tous j'ai un leger probleme mais je vois pas d'ou il vien en fait mon script n'affiche qu'une ligne lors de la recherche alors qu'il devrai en afficher deux qq'un peu t'il maider

    merci

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    #! C:\Perl\bin\perl.exe
     
    use CGI;
    use strict; use warnings;
     
    my $cgi = CGI::new();
     
    print $cgi->header(),
          $cgi->start_html();
    print "<h2><div align='center'> Voici les voitures rechercher.</div></h2><br>";
    my $marque = $cgi->param("marque");
    my $model = $cgi->param("model");
     
    my $liste = '../professionels/liste/voiture.txt' ;
    open my $voiture_file, '<', $liste
        or die "on ne peu pas ouvrir $liste : $!\n";
     
     
    while( my $line = <$voiture_file>) {
     
        chomp($line);
        my ($marque1,$model1,$km1,$num1,$annee1)= split /;/, $line;
     
    	#print "$marque1,$num1,$model1,$annee1,$km1";
     
    	if($marque1 eq $marque) {
    		#print "$marque1,$marque";
            if($model1 eq $model) {
     
    			print "$model,$model1";
    			print '<table style="width: 800px; border: 0; text-align: left;">';
    			print '<tr bgcolor="#000000">';
    			print '<td width="150"><font color="FFFFFF" size="2" face="Arial">Marque</font></td>';
    			print '<td width="150"><font color="FFFFFF" size="2" face="Arial">Modele</font></td>';
    			print '<td width="100"><font color="FFFFFF" size="2" face="Arial">Kilometrage</font></td>';
    		    print '<td width="100"><font color="FFFFFF" size="2" face="Arial">N&deg; Moteur</font></td>';
    		    print '<td width="150"><font color="FFFFFF" size="2" face="Arial">Ann&eacute;e</font></td>';
    			print '</tr>';
                print '<tr><td style="width: 25%; border: 0"><font  size="2" face="Arial">' . $marque1 . '</font></td>';
    			print '<td style="width: 25%; border: 0;"><font  size="2" face="Arial">' . $model1 . '</font></td>';
    			print '<td style="width: 25%; border: 0"><font  size="2" face="Arial">' . $km1 . '</font></td>';
    			print '<td style="width: 25%; border: 0"><font  size="2" face="Arial">' . $num1 . '</font></td>';
    			print '<td style="width: 25%; border: 0"><font  size="2" face="Arial">' . $annee1 . '</font></td></tr>';
     
                last;
            }
            else {
                print '<div align="center">Aucune voiture trouver veuillez modifier votre recherche</div>';
    			print '<div align="center"><a href="choix.cgi">Cliquer ici</a></div>';
                last;
            }
        }
     
    }
    __END__

  2. #2
    Inactif
    Inscrit en
    Juillet 2006
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 18
    Par défaut
    la cause de ce probleme est le while parce que lorsqu'il a trouver un valeur bonne il s'arrete
    que faut t'il mettre pour remplacer le while

  3. #3
    Expert confirmé
    Avatar de Jedai
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2003
    Messages
    6 245
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2003
    Messages : 6 245
    Par défaut
    Le problème n'est pas le while mais le last : un last dans une boucle arrête l'exécution de celle-ci et passe à la suite, donc il est normal que ta boucle s'arrête après avoir rencontré la première voiture convenant.

    --
    Jedaï

  4. #4
    Inactif
    Inscrit en
    Juillet 2006
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 18
    Par défaut
    donc en gros il faut supprimer le last

  5. #5
    Inactif
    Inscrit en
    Juillet 2006
    Messages
    18
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 18
    Par défaut
    merci ca fonctionne il me reste jsute le probleme que ca affiche deux fois le tableau

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. P'tit probleme de creation de formulaire dans mon script
    Par Jim_Nastiq dans le forum Langage
    Réponses: 2
    Dernier message: 28/04/2006, 16h40
  2. Réponses: 9
    Dernier message: 21/02/2006, 14h14
  3. [MySQL] Problème dans mon script de pagination
    Par speedylol dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 03/11/2005, 19h37
  4. erreur dans mon script
    Par Swata dans le forum Langage
    Réponses: 4
    Dernier message: 21/09/2005, 00h02
  5. [langage]erreur dans mon script
    Par Fabouney dans le forum Langage
    Réponses: 11
    Dernier message: 30/06/2005, 14h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo