X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=pod%2Fperlfaq9.pod;h=fa59003d109c44994b664c4e3c8368556a0bef89;hb=6168cf9995a8bfcfe4ab9350ebc7de70215ae9af;hp=e4206bba15b712baad65d343269c40e8b7e37e54;hpb=49d635f9372392ae44fe4c5b62b06e41912ae0c9;p=p5sagit%2Fp5-mst-13.2.git diff --git a/pod/perlfaq9.pod b/pod/perlfaq9.pod index e4206bb..fa59003 100644 --- a/pod/perlfaq9.pod +++ b/pod/perlfaq9.pod @@ -1,6 +1,6 @@ =head1 NAME -perlfaq9 - Networking ($Revision: 1.13 $, $Date: 2002/11/13 06:07:58 $) +perlfaq9 - Networking ($Revision: 1.16 $, $Date: 2004/10/30 12:20:59 $) =head1 DESCRIPTION @@ -11,10 +11,10 @@ and a few on the web. (Alan Flavell answers...) -The Common Gateway Interface (CGI) specifies a software interface between -a program ("CGI script") and a web server (HTTPD). It is not specific -to Perl, and has its own FAQs and tutorials, and usenet group, -comp.infosystems.www.authoring.cgi +The Common Gateway Interface (CGI) specifies a software interface between +a program ("CGI script") and a web server (HTTPD). It is not specific +to Perl, and has its own FAQs and tutorials, and usenet group, +comp.infosystems.www.authoring.cgi The original CGI specification is at: http://hoohoo.ncsa.uiuc.edu/cgi/ @@ -22,9 +22,9 @@ Current best-practice RFC draft at: http://CGI-Spec.Golux.Com/ Other relevant documentation listed in: http://www.perl.org/CGI_MetaFAQ.html -These Perl FAQs very selectively cover some CGI issues. However, Perl +These Perl FAQs very selectively cover some CGI issues. However, Perl programmers are strongly advised to use the CGI.pm module, to take care -of the details for them. +of the details for them. The similarity between CGI response headers (defined in the CGI specification) and HTTP response headers (defined in the HTTP @@ -53,7 +53,7 @@ Perl CGI scripts" guide at http://www.perl.org/troubleshooting_CGI.html -If, after that, you can demonstrate that you've read the FAQs and that +If, after that, you can demonstrate that you've read the FAQs and that your problem isn't something simple that can be easily answered, you'll probably receive a courteous and useful reply to your question if you post it on comp.infosystems.www.authoring.cgi (if it's something to do @@ -61,7 +61,7 @@ with HTTP or the CGI protocols). Questions that appear to be Perl questions but are really CGI ones that are posted to comp.lang.perl.misc are not so well received. -The useful FAQs, related documents, and troubleshooting guides are +The useful FAQs, related documents, and troubleshooting guides are listed in the CGI Meta FAQ: http://www.perl.org/CGI_MetaFAQ.html @@ -150,19 +150,19 @@ on text like this: You can easily extract all sorts of URLs from HTML with C which handles anchors, images, objects, -frames, and many other tags that can contain a URL. If you need -anything more complex, you can create your own subclass of -C or C. You might even use +frames, and many other tags that can contain a URL. If you need +anything more complex, you can create your own subclass of +C or C. You might even use C as an example for something specifically suited to your needs. You can use URI::Find to extract URLs from an arbitrary text document. -Less complete solutions involving regular expressions can save +Less complete solutions involving regular expressions can save you a lot of processing time if you know that the input is simple. One solution from Tom Christiansen runs 100 times faster than most module based approaches but only extracts URLs from anchors where the first -attribute is HREF and there are no other attributes. +attribute is HREF and there are no other attributes. #!/usr/bin/perl -n00 # qxurl - tchrist@perl.com @@ -297,9 +297,9 @@ redirection is handled by the local web server. print redirect($url); -But if coded directly, it could be as follows (the final "\n" is +But if coded directly, it could be as follows (the final "\n" is shown separately, for clarity), using either a complete URL or -an absolute URLpath. +an absolute URLpath. print "Location: $url\n"; # CGI response header print "\n"; # end of headers @@ -383,7 +383,7 @@ a database, send mail, or purchase a computer). You can't, at least, not in real time. Bummer, eh? Without sending mail to the address and seeing whether there's a human -on the other hand to answer you, you cannot determine whether a mail +on the other end to answer you, you cannot determine whether a mail address is valid. Even if you apply the mail header standard, you can have problems, because there are deliverable addresses that aren't RFC-822 (the mail header standard) compliant, and addresses that aren't @@ -551,23 +551,23 @@ MIME::Lite also includes a method for sending these things. $msg->send; -This defaults to using L but can be customized to use +This defaults to using L but can be customized to use SMTP via L. =head2 How do I read mail? While you could use the Mail::Folder module from CPAN (part of the -MailFolder package) or the Mail::Internet module from CPAN (also part +MailFolder package) or the Mail::Internet module from CPAN (part of the MailTools package), often a module is overkill. Here's a mail sorter. #!/usr/bin/perl - # bysub1 - simple sort by subject + my(@msgs, @sub); my $msgno = -1; $/ = ''; # paragraph reads while (<>) { - if (/^From/m) { + if (/^From /m) { /^Subject:\s*(?:Re:\s*)*(.*)/mi; $sub[++$msgno] = lc($1) || ''; }