+ Répondre à la discussion
Affichage des résultats 1 à 4 sur 4
  1. #1
    Invité de passage
    Inscrit en
    avril 2009
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : avril 2009
    Messages : 37
    Points : 1
    Points
    1

    Par défaut Problème : lancer un script Perl depuis HTML (Linux+Windows)

    Bonjour à tous ,

    Tout d'abord je tiens à remercier chaleureusement tous ceux qui m'ont déjà aidé sur ce forum. Si j'ai posé peu de questions, j'ai pas mal lu grâce au site et à ses contributeurs - de loin les plus riches du web -, et ai souvent appris beaucoup. Merci, merci, merci : si je sais un peu de Perl, c'est aussi grâce à ce site.

    Aujourd'hui cependant, je dois dépasser une nouvelle difficulté. Après avoir écrit certains programmes dont j'avais besoin pour mes recherches, j'ai besoin de créer une interface très simple, afin de faciliter l'utilisation de mes scripts. Il ne s'agit que de quelques options à sélectionner, c'est vraiment très simple. Après avoir hésité concernant tel ou tel GUI, je me suis dit que le plus simple était peut-être de faire une page HTML de type formulaire, afin d'envoyer les informations au script.

    Cependant, j'ai une limitation*: il faut que ce script fonctionne avec une simple installation de Perl «*basique*», aussi bien sous Linux que sous Windows. Je ne souhaite pas que l'utilisateur ait besoin d'installer une architecture complète type LAMP, pour que l'interface / le script fonctionne.

    J'ai donc écris un formulaire, tout à fait basique, du type*:

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    <TR>
    	<TD>Mode automatique</TD>
    	<TD>Oui :  <INPUT type=radio name="auto" value="1">
    	<br>Non : <INPUT type=radio name="auto" value="2">
    	</TD>
    </TR>
     
    etc...
    Sous Windows, cependant, j'ai la surprise de voir qu'une fois le formulaire rempli, et l'envoi déclenché, le script ne s'exécute pas, mais s'affiche tout simplement dans le navigateur. Y-a-t-il quelque chose de spécial à faire, s'il vous plaît, afin que mon script s'exécute ? Du côté Perl, j'aurai quelque chose du type*:

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
     
    #!/usr/local/bin/perl
    use POSIX;
    use CGI qw/:all /;
    use utf8;			
     
    my $cgi = new CGI;
     
    # récupération des informations HTML
     
    $auto=param('auto');
    $modecount=param('modecount');
    $rotation=param('rotation');
    $moderang=param('moderang');
    $prur_min=param('prur_min');
     
    print "Automatique : ".$auto."\n";
    $dummy = <STDIN>;
     
    # etc., etc., etc.
     
    exit;
    Auriez-vous une idée / solution, s'il vous plaît, afin que ça ne soit pas simplement le script qui s'affiche, mais plutôt qu'il s'exécute ? J'avoue être totalement novice en ce qui concerne la circulation des données entre HTML et Perl. En vous remerciant beaucoup d'avance pour votre aide précieuse.

    Cordialement.

  2. #2
    Membre confirmé
    Homme Profil pro
    Inscrit en
    juillet 2009
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France

    Informations forums :
    Inscription : juillet 2009
    Messages : 164
    Points : 202
    Points
    202

    Par défaut

    Quel serveur as-tu installé sur ton ordinateur ? apache ?
    le serveur en question est-il configuré pour lancer les scripts cgi ?

  3. #3
    Invité de passage
    Inscrit en
    avril 2009
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : avril 2009
    Messages : 37
    Points : 1
    Points
    1

    Par défaut

    Merci beaucoup pour cette réponse, Nibroc.
    En fait, précisément, j'aimerai que l'utilisateur n'ai pas à installer un serveur et que l'HTML appelle un script sans avoir besoin d'autre élément extérieur. Mais peut-être est-ce tout simplement impossible s'il vous plaît ?

    (avec un serveur, j'arrive à faire fonctionner le tout => là, mon cas est un peu différent ).

  4. #4
    Membre confirmé
    Homme Profil pro
    Inscrit en
    juillet 2009
    Messages
    164
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France

    Informations forums :
    Inscription : juillet 2009
    Messages : 164
    Points : 202
    Points
    202

    Par défaut

    L'utilisateur, la personne qui depuis son ordinateur consulte les pages HTML à l'aide de son navigateur, n'a pas besoin de serveur sur sa machine (ni d'"interpréteur" perl), mais l'ordinateur qui héberge les pages en question doit avoir un serveur et un "interpréteur" perl. Quand quelqu'un consulte une page HTML contenant un script perl, c'est le serveur qui lance le script et envoie le résultat à l'utilisateur. Est-ce clair ?
    Quand on teste une telle page sur son ordinateur, "en local", l'ordinateur joue les deux rôles à la fois, il doit donc avoir un serveur et un interpréteur perl.
    Si on télécharge (upload) ces pages, par exemple sur ses pages perso, l'ordinateur sur lequel ces pages sont téléchargées doit avoir un serveur, c'est le serveur qui reçoit et traite les demandes du client.

    Citation Envoyé par Sancti_Eyes Voir le message
    Merci beaucoup pour cette réponse, Nibroc.
    En fait, précisément, j'aimerai que l'utilisateur n'ai pas à installer un serveur et que l'HTML appelle un script sans avoir besoin d'autre élément extérieur. Mais peut-être est-ce tout simplement impossible s'il vous plaît ?

    (avec un serveur, j'arrive à faire fonctionner le tout => là, mon cas est un peu différent ).

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •