⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fig19_07.pl

📁 PERL语言资料 可以用于PERL程序设计
💻 PL
字号:
#!/perl/bin/perl
# Fig. 19.7: fig19_07.pl
# Guestbook program which filters HTML tags.

use warnings;
use strict;
use CGI qw( :standard );

print( header(), start_html( "Guestbook" ), h1( "Guestbook" ) );

if ( param() ) {
   my $name = param( "name" );
   my $email = param( "email" );
   my $message = param( "message" );

   if ( $name =~ /<.*>/ || $email =~ /<.*>/ ) {
      print( h3( "HTML tags not allowed in Name or E-mail" ), 
         br(), "Please correct your entry and re-send", br(),
         "To include the < or > symbols, use &ampgt or &amplt.",
         br() );
   }
   else {  
      print( h3( "Thank you for signing our guestbook!!!" ) );
      
      # filter to remove HTML tags
      print( $message =~ 
         s/<([^>]*)>/( $1 eq "BR" || $1 eq "br" ) ? 
         "<$1>" : "\&lt$1\&gt"/ge );
      
      open( FILE, ">>guestbook.log" ) or 
         die( "Cannot open guestbook" );
      print( FILE "\n", hr(), "From: ", 
         a( { -href => "mailto:$email" }, $name ), br(), br(),
         $message );    
      close( FILE );
   }
}

open( FILE, "guestbook.log" ) or die( "Can't open guestbook" );

print while ( <FILE> );
close( FILE );

print( hr(), h4( "Please sign our guestbook:" ), start_form(),
   "Name: ", textfield( -name => "name" ), br(),
   "E-mail: ", textfield( -name => "email" ), br(),
   "Enter your message:", br(),
   textarea( -name => "message", -rows => 5, -columns => 50,
             -wrap => 1 ), br(),
   h4( "Warning: Filtering HTML tags except &ltbr&gt" ),
   br(), submit( -name => "Sign the Guestbook" ), end_form(),
   end_html() );
      

###########################################################################
#  (C) Copyright 2001 by Deitel & Associates, Inc. and Prentice Hall.     #
#  All Rights Reserved.                                                   #
#                                                                         #
#  DISCLAIMER: The authors and publisher of this book have used their     #
#  best efforts in preparing the book. These efforts include the          #
#  development, research, and testing of the theories and programs        #
#  to determine their effectiveness. The authors and publisher make       #
#  no warranty of any kind, expressed or implied, with regard to these    #
#  programs or to the documentation contained in these books. The authors #
#  and publisher shall not be liable in any event for incidental or       #
#  consequential damages in connection with, or arising out of, the       #
#  furnishing, performance, or use of these programs.                     #
###########################################################################

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -