J'ai la configuration existante comme ci-dessous.Passer l'utilisateur Entrée d'une page HTML dans un script Perl et afficher les résultats dans la page Web
installation existante:
Voici l'utilisateur script Perl interactif qui prend la EmpNo comme argument et imprime le nom et salaire de l'employé de la table des employés. Actuellement, je cours ce script dans le terminal et la sortie est également affichée sur le terminal.
Perl code
#!/usr/bin/perl
use DBI;
use strict;
my $driver = "mysql";
my $database = "dbname";
my $dsn = "DBI:$driver:database=$database";
my $userid = "uid";
print "Enter employee Number \n";
my $input1 =<>;
my $dbh = DBI->connect($dsn, $userid) or die $DBI::errstr;
my $sth = $dbh->prepare("SELECT Empname ,Salary FROM Employee WHERE EmpNo ='$input1' ");
$sth->execute() or die $DBI::errstr;
print "Number of rows found :" + $sth->rows;
while (my @row = $sth->fetchrow_array()) {
my ($name, $salary) = @row;
print "Name = $name, Salary = $salary \n";
}
$sth->finish()
Sortie: perl test.pl
Entrez employé Numéro Name = Salaire John = 10000
Exigence:
lieu sur l'exécution du script sur le terminal avec l'entrée de l'utilisateur. J'aime avoir une page Web HTML où l'utilisateur peut sélectionner l'EmpNo dans la liste déroulante et ce EmpNo devrait être passé au script Perl en cliquant sur le bouton soumettre . Le script doit ensuite extraire les détails de la base de données et les afficher sur la page Web.
Brève idée:
Quelque chose comme ceci avec des formes.
<FORM action="/test.pl" method="POST">
< select name = "Employee details" >
<option selected = "selected">EmpNo</option>
<option value = "207711">207711</option>
<option value = "207712">207712</option>
<option value = "207713">207713</option>
</select>
<input type="submit" value="Submit">
</FORM>
Je suis ouvert à utiliser CGI et j'ai installé Apache. En attente de votre réponse précieuse. Merci beaucoup !!!
Si par "CGI" vous voulez dire CGI.pm, ce n'est pas vraiment une bonne option de nos jours (son utilisation est en fait [déconseillée dans la documentation officielle] (https://metacpan.org/pod/CGI#CGI.pm- A été retiré de l'âme) Voir [CGI :: Alternatives] (https://metacpan.org/pod/CGI::Alternatives) à la place. – ThisSuitIsBlackNot
Votre question est trop générale. Vous devez configurer une page HTML, et votre serveur HTTP doit être configuré pour attendre une URL de '/ test.pl'. Ensuite, vous devez modifier votre script Perl pour accepter les données d'entrée via l'interface CGI et fournir une sortie HTML au lieu du texte simple. Tout cela ne peut pas être traité dans une seule réponse – Borodin
@Borodin: la page HTML est prête et l'URL de /test.pl aussi. Pourriez-vous suggérer les changements requis pour accepter les données d'entrée via l'interface CGI. Merci . – John