/var/www/html/test.html
<!DOCTYPE html> <meta charset="utf-8"> <style> #errorMessage { color: red; } </style> <form action="/cgi-bin/test.cgi"> <div id="errorMessage"></div> <label for="name">お名前:</label> <input name="name" id="name" required><br> <label for="password">パスワード:</label> <input type="password" name="password" id="password" required><br> <label for="passwordConfirm">パスワード(確認):</label> <input type="password" name="confirm" id="confirm" oninput="CheckPassword(this)"><br> <input type="submit" value="送信"> </form> <script> function CheckPassword(confirm){ var input1 = password.value; var input2 = confirm.value; if (input1 != input2){ confirm.setCustomValidity("入力値が一致しません"); } else{ confirm.setCustomValidity(''); } } </script>
/var/www/cgi-bin/test.cgi
#!/usr/bin/perl -- use strict; use utf8; use warnings; use CGI; my $q = new CGI; my $param1 = $q->param('name'); my $param2 = $q->param('password'); print "Content-type:text/html\n\n"; print "<html>\n"; print "<head></head>\n"; print "<form action=\"/cgi-bin/test2.cgi\">"; print "<input type=\"hidden\" value=\"$param1\" name=\"name\"></input>"; print "<input type=\"hidden\" value=\"$param2\" name=\"password\"></input>"; print "<label for=\"name\">お名前:</label>"; print "$param1<br>"; print "<label for=\"password\">パスワード:</label>"; print "$param2<br>"; print "<input type=\"submit\" value=\"送信\">"; print "</form>"; print "</html>";
/var/www/cgi-bin/test2.cgi
#!/usr/bin/perl -- use strict; use utf8; use warnings; use CGI; my $q = new CGI; my $param1 = $q->param('name'); my $param2 = $q->param('password'); print "Content-type:text/html\n\n"; print "<html>\n"; print "<head></head>\n"; print "<form action=\"/cgi-bin/test2.cgi\">"; print "<label for=\"name\">お名前:</label>"; print "$param1<br>"; print "<label for=\"password\">パスワード:</label>"; print "$param2<br>"; print "<input type=\"submit\" value=\"送信\">"; print "</form>"; print "</html>";
hiddenで送ります。