Précédent   Forum du club des développeurs et IT Pro > Autres langages > Perl > Web
Web Toutes vos questions sur la construction de pages web en Perl (CGI, Ajax, mod_perl, sessions, ...) Avant de poster, veuillez consulter les FAQs perl, les cours Perl et les sources Perl.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 13/03/2012, 15h38   #1
Sancti_Eyes
Invité de passage
 
Inscription : 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.
Sancti_Eyes est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/03/2012, 22h51   #2
nibroc
Membre actif
 
Homme Michel
Inscription : juillet 2009
Messages : 158
Détails du profil
Informations personnelles :
Nom : Homme Michel
Âge : 68
Localisation : France

Informations forums :
Inscription : juillet 2009
Messages : 158
Points : 189
Points : 189
Quel serveur as-tu installé sur ton ordinateur ? apache ?
le serveur en question est-il configuré pour lancer les scripts cgi ?
nibroc est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/03/2012, 19h26   #3
Sancti_Eyes
Invité de passage
 
Inscription : avril 2009
Messages : 37
Détails du profil
Informations forums :
Inscription : avril 2009
Messages : 37
Points : 1
Points : 1
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 ).
Sancti_Eyes est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/03/2012, 23h10   #4
nibroc
Membre actif
 
Homme Michel
Inscription : juillet 2009
Messages : 158
Détails du profil
Informations personnelles :
Nom : Homme Michel
Âge : 68
Localisation : France

Informations forums :
Inscription : juillet 2009
Messages : 158
Points : 189
Points : 189
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 ).
nibroc est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 00h29.


 
 
 
 
Partenaires

Hébergement Web