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

Web Perl Discussion :

Problème affichage CGI


Sujet :

Web Perl

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Technicien réseau
    Inscrit en
    Janvier 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Technicien réseau

    Informations forums :
    Inscription : Janvier 2012
    Messages : 12
    Points : 9
    Points
    9
    Par défaut Problème affichage CGI
    Bonjour à tous,

    Sa fais quelques jours que je parcours votre forum et cela m'aide beaucoup afin de réaliser ma CGI en Perl. Malgré l'abondance des sujets et votre Faq très complète je galère pas mal a réaliser une simple page de test. Dans ce cas envoyer simplement des informations depuis une page HTML (en méthode POST) vers un document .pl .

    J'ai par ailleurs installé le module complémentaire pour faire fonctionner Perl sous Eclipse. Bien que je suis sur Mac et que j'ai déja Perl intégré dans le terminal j'ai préféré cette solution.

    Mes deux pages (HTML & PERL) sont bien sur dans le dossier CGI-BIN.
    Ma page HTML se lit sans problème mais dés que les informations sont envoyés vers le page .pl le naviguateur n'affiche plus rien ...

    Je pense pas que le chemin d'accès soit la cause de ce problème mais j'attend avec impatience vos conseils.




    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    <head>
    <title>Page de commentaire</title>
    </head>
    <body bgcolor="#E0E0E0" text="#000000">
    <h1>Votre commentaire</h1>
    <form action="http://localhost/cgi-bin/comments.pl" method="post">
    <p>Name:<br><input size="40" maxlength="40" name="utilisateur"></p>
    <p>Text:<br><textarea rows="5" cols="50" name="commentaire"></textarea></p>
    <p><input type="submit" value="envoyer"></p>
    </form>
    </body>
    </html>


    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
    #!/usr/bin/perl -w
     
    use strict;
    use CGI;
     
    my $cgi = new CGI;
    use CGI::Carp qw(fatalsToBrowser);
     
    my @noms_champ = $cgi->param();
     
    print $cgi->header(),
          $cgi->start_html('avis CGI du programme '),
          $cgi->h1('avis CGI du programme ',$cgi->i('comments.pl'));
          foreach my $champ (@noms_champ) {
            print $cgi->b('nom de champ: '),
                  $champ,
                  $cgi->b(', contenu: '),
                  $cgi->param($champ), "<br>";
          }
    print $cgi->end_html();

  2. #2
    Futur Membre du Club
    Homme Profil pro
    Technicien réseau
    Inscrit en
    Janvier 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Technicien réseau

    Informations forums :
    Inscription : Janvier 2012
    Messages : 12
    Points : 9
    Points
    9
    Par défaut Probleme Apache
    En relisant bien les questions du forum, j'ai au final compris que Apache n'était pas configuré ...

  3. #3
    Responsable Perl et Outils

    Avatar de djibril
    Homme Profil pro
    Inscrit en
    Avril 2004
    Messages
    19 820
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 19 820
    Points : 499 184
    Points
    499 184
    Par défaut
    C'est ok maintenant ?

  4. #4
    Futur Membre du Club
    Homme Profil pro
    Technicien réseau
    Inscrit en
    Janvier 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Technicien réseau

    Informations forums :
    Inscription : Janvier 2012
    Messages : 12
    Points : 9
    Points
    9
    Par défaut
    Déja je tient à te remercier de l'attention que tu porte à mon problème.

    Je n'ai pas encore réussi à autoriser les CGI dans Apache.
    J'obtiens aussi des erreurs quand je code sur Eclipse. Est que le fait de ne pas avoir réussi à autoriser les CGI sur Apache l'empêche sur Eclipse ?

  5. #5
    Responsable Perl et Outils

    Avatar de djibril
    Homme Profil pro
    Inscrit en
    Avril 2004
    Messages
    19 820
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 19 820
    Points : 499 184
    Points
    499 184
    Par défaut
    Je ne travaille pas sous eclipse, donc aucune idée .

  6. #6
    Futur Membre du Club
    Homme Profil pro
    Technicien réseau
    Inscrit en
    Janvier 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Technicien réseau

    Informations forums :
    Inscription : Janvier 2012
    Messages : 12
    Points : 9
    Points
    9
    Par défaut
    Dommage ..

    Si par contre tu aurais une idée de comment mettre s'occuper de Apache pour les CGI je suis prenant.

    D'ailleurs mon dossier cgi-bin est placé dans mon document MAMP. C'est normal ?

    Dans tout sa j'ai testé les deux fichiers printenv qui me sort bien toutes les informations. Par contre, le test-cgi ne m'affiche aucune infos !

  7. #7
    Futur Membre du Club
    Homme Profil pro
    Technicien réseau
    Inscrit en
    Janvier 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Technicien réseau

    Informations forums :
    Inscription : Janvier 2012
    Messages : 12
    Points : 9
    Points
    9
    Par défaut
    J'ai modifié le fichier httpd.conf afin d'autoriser les CGi. Malgré sa lorsque j'essaye d'acceder a mon fichier via l'URL, Apache m'annonce que je ne suis pas autorisé !

    Ne me laissant pas faire, je vais dans le Terminal et j'entre cette commande :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    chmod a+x nom_du_chemin_fichier
    Et tadaamm !! Sa marche pour faire tourner un " Hello World !".

    Heureux comme pas, je modifie le code afin de changer ce " Hello World ! " par ceci :

    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
    print $cgi->header, <<html;
    <form action="test.pl" method="post">
    html
    while (my @row = $sth->fetchrow)
    {
    print $cgi->header, <<html;
    ID:<input name="pid" value="@row[0]" readonly="true"/><br/>
    Name: <input name="pname" value="@row[1]"/><br/>
    Description : <input name="pdescription" value="@row[2]"/><br/>
    Unit Price :<input name="punitprice" value="@row[3]"/><br/>
    html
    }
    print $cgi->header, <<html
    <input type="submit" value="update Row">
    </form>
    html
    Et la c'est le drame --> 500 Internal Error ... Impossible d'ouvrir la page.

    Quelqu'un aurait une solution ??

  8. #8
    Responsable Perl et Outils

    Avatar de djibril
    Homme Profil pro
    Inscrit en
    Avril 2004
    Messages
    19 820
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 19 820
    Points : 499 184
    Points
    499 184
    Par défaut
    Quand tu as une erreur 500, cela veut dire que tu as une erreur Perl. Il faut consulter le fichier log d'apache.

  9. #9
    Futur Membre du Club
    Homme Profil pro
    Technicien réseau
    Inscrit en
    Janvier 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Technicien réseau

    Informations forums :
    Inscription : Janvier 2012
    Messages : 12
    Points : 9
    Points
    9
    Par défaut
    Merci ton aide

    Tu as raison le log me previent de :Can't find string terminator "html" anywhere before EOF at /Applications/MAMP/cgi-bin/test2.pl line 17.

  10. #10
    Responsable Perl et Outils

    Avatar de djibril
    Homme Profil pro
    Inscrit en
    Avril 2004
    Messages
    19 820
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 19 820
    Points : 499 184
    Points
    499 184
    Par défaut
    Essaye déjà ce code perl à la place du tiens :
    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
    #!/usr/bin/perl
    use Carp;
    use strict;
    use warnings;
     
    use CGI;
     
    my $cgi = CGI->new;
    print $cgi->header();
    print $cgi->start_html( 
      -title => 'Page de test CGI',
    );
     
    print <<'HTML';
      Bonjour <b>calu45</b>, tout fonctionne correctement !
    HTML
     
    print $cgi->end_html();

  11. #11
    Futur Membre du Club
    Homme Profil pro
    Technicien réseau
    Inscrit en
    Janvier 2012
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Technicien réseau

    Informations forums :
    Inscription : Janvier 2012
    Messages : 12
    Points : 9
    Points
    9
    Par défaut
    Oui sa marche nickel !

    J'ai aussi réussi a a générer les informations transmit depuis un formulaire HTML.

    Je commence a mieux comprendre ce fameux language Perl

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

Discussions similaires

  1. Réponses: 10
    Dernier message: 08/06/2009, 11h30
  2. problème affichage image
    Par thealpacino dans le forum Balisage (X)HTML et validation W3C
    Réponses: 8
    Dernier message: 30/05/2005, 13h56
  3. Problème affichage primitive
    Par goutbouyo dans le forum DirectX
    Réponses: 4
    Dernier message: 29/12/2004, 18h25
  4. [Plugin][VE] Problème affichage
    Par sebb84 dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 05/07/2004, 14h50
  5. [DOS] Problème affichage de DOS dans un Memo
    Par Pedro dans le forum API, COM et SDKs
    Réponses: 9
    Dernier message: 25/06/2004, 13h31

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