Bonjour,

Me revoici parmi vous pour un nouveau problème, je suis en train de perdre ma matinée là dessus, et ça commence à me chauffer les oreilles.

Rien de plus simple, j'ai un premier script en CGI/perl pour mon formulaire. Je l'ai appelé Html.pm, et un script pour récupérer le paramètre que j'ai appelé b.pl.

Les deux fichiers sont en 755, ils compilent sans erreur en mode commande, je veux les tester, j'affiche donc mon formulaire dans le navigateur pas de problème, je saisi le paramètre, pas de problème, je clique sur "Submit" et là : ça me redonne mon formulaire vide, et ça ne me dirige pas vers mon script b.pl.


Html.pm :
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
 
#!/usr/bin/perl -w
package Html;
use Exporter;
 
use CGI qw/:standard/;
use warnings;
use strict;
use TopPage;
use FootPage;
 
sub body{
	print 	header, 
		start_html(-title=>'GenCan',-style=>{-src=>"http://localhost/styles/Style.css"}),
		start_form;
	TopPage::top_page();
	print div({-id=>'Title'},h1('Form')),p,start_form;
	print	"<FORM NAME=\"form\" ACTION=\"b.pl\" METHOD=\"POST\">
				<INPUT TYPE=\"text\" NAME=\"prenom\">
				<INPUT TYPE=\"submit\" VALUE=\"Envoyer\">
			</FORM>";
	FootPage::foot_page();
}
&body();
 
1;
 
__END__
b.pl :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
#!/usr/bin/perl
use warnings;
use CGI;
use strict;
 
my($cgi) = new CGI;
print "Content-type: text/html\n\n";
 
my($prenom) = $cgi->param("prenom");
print "Bonjour <b>".$prenom."</b>";
Mes 2 fichiers se trouvent au même niveau de mon arborescence dans le dossier cgi-bin.
Je me suis dis que ça venait peut-être de la façon dont je mettais le chemin dans "action", j'ai testé :
ACTION=\"b.pl\"
ACTION=\"/cgi-bin/b.pl\"
ACTION=\"http://localhost/cgi-bin/b.pl\"
mais rien...

serait-ce un problème de droit d'exécution du cgi ?

Help !

Merci de votre aide