[10695] in Perl-Users-Digest

home help back first fref pref prev next nref lref last post

Perl-Users Digest, Issue: 4287 Volume: 8

daemon@ATHENA.MIT.EDU (Perl-Users Digest)
Tue Nov 24 14:16:41 1998

Date: Tue, 24 Nov 98 11:05:53 -0800
From: Perl-Users Digest <Perl-Users-Request@ruby.OCE.ORST.EDU>
To: Perl-Users@ruby.OCE.ORST.EDU (Perl-Users Digest)

Perl-Users Digest           Tue, 24 Nov 1998     Volume: 8 Number: 4287

Today's topics:
        Returning to a previous URL from a CGI script <brian.gaber@pwgsc.gc.ca>
    Re: Returning to a previous URL from a CGI script (Matthew Bafford)
    Re: Returning to a previous URL from a CGI script <brian.gaber@pwgsc.gc.ca>
        Roman Numerals Problem (Pattern Match) <aidan@salvador.blackstar.co.uk>
    Re: Roman Numerals Problem (Pattern Match) (Martien Verbruggen)
    Re: Roman Numerals Problem (Pattern Match) (Larry Rosler)
        rounding with int <lux@coo.mts.dec.com>
    Re: rounding with int <Tony.Curtis+usenet@vcpc.univie.ac.at>
    Re: rounding with int (Tad McClellan)
    Re: Self Replicating Sites? <gellyfish@btinternet.com>
    Re: Self Replicating Sites? <jjarrett@ecpi.com>
        Servers to test a perl CGI script ? <ipuf@wanadoo.fr>
    Re: Servers to test a perl CGI script ? <due@murray.fordham.edu>
        shutdown on IO::Socket::INET object (Andrew)
        smbclient&perl <Thomas.Schachner@awd.at>
        STDOUT STDERR problems on Win95 <james_stewart@mentorg.com>
    Re: STDOUT STDERR problems on Win95 <rick.delaney@shaw.wave.ca>
        Still Having Problems with "Rename()" <wcase@mediaone.net>
        Stupid question:  Script never terminates? (Abe)
    Re: Stupid question:  Script never terminates? <psmith01@mindspring.com>
    Re: Stupid question:  Script never terminates? <zenin@bawdycaste.org>
    Re: Trouble installing Date::Manip module <gellyfish@btinternet.com>
        URGENT...Help Required! <bellears@deakin.edu.au>
    Re: URGENT...Help Required! <flavell@mail.cern.ch>
    Re: URGENT...Help Required! <bellears@deakin.edu.au>
    Re: URGENT...Help Required! (Rich)
    Re: URGENT...Help Required! (Rich)
        using environment variables from wiyhin the perl script <anitha@bgs.com>
    Re: using environment variables from wiyhin the perl sc (Tad McClellan)
        using sort filter with strict <jbo@dator.dk>
    Re: using sort filter with strict (Andrew M. Langmead)
    Re: using sort filter with strict (Tad McClellan)
    Re: Why doesn't something work? <cflinn@ibsweb.net>
        Special: Digest Administrivia (Last modified: 12 Mar 98 (Perl-Users-Digest Admin)

----------------------------------------------------------------------

Date: Tue, 24 Nov 1998 10:01:01 -0500
From: "Brian Gaber" <brian.gaber@pwgsc.gc.ca>
Subject: Returning to a previous URL from a CGI script
Message-Id: <73ehpj$e494@shark.ncr.pwgsc.gc.ca>

How can I create a link at the end of my CGI script for the user to go back
two URLs (i.e. not the CGI calling URL, but the one before that).  Many
URL's can lead to the CGI calling URL.

Brian Gaber
brian.gaber@pwgsc.gc.ca




------------------------------

Date: Tue, 24 Nov 1998 12:43:02 -0500
From: dragons@scescape.net (Matthew Bafford)
Subject: Re: Returning to a previous URL from a CGI script
Message-Id: <MPG.10c4ba3043ead695989734@news.scescape.net>

In article <73ehpj$e494@shark.ncr.pwgsc.gc.ca>, brian.gaber@pwgsc.gc.ca 
says...
=> How can I create a link at the end of my CGI script for the user to go back
=> two URLs (i.e. not the CGI calling URL, but the one before that).  Many
=> URL's can lead to the CGI calling URL.

Amazingly enough, the answer is very similar to the one I gave earlier:

print "To go back two pages, use your browser's 'back' function 
twice.\n";

Also, see the numerous posts on this subject, especially those by 
Abigail.

=> Brian Gaber

--Matthew


------------------------------

Date: Tue, 24 Nov 1998 13:17:34 -0500
From: "Brian Gaber" <brian.gaber@pwgsc.gc.ca>
Subject: Re: Returning to a previous URL from a CGI script
Message-Id: <73eta8$9nr1@shark.ncr.pwgsc.gc.ca>

>=> How can I create a link at the end of my CGI script for the user to go
back
>=> two URLs (i.e. not the CGI calling URL, but the one before that).  Many
>=> URL's can lead to the CGI calling URL.
>
>Amazingly enough, the answer is very similar to the one I gave earlier:
>
>print "To go back two pages, use your browser's 'back' function
>twice.\n";
>
>Also, see the numerous posts on this subject, especially those by
>Abigail.
>
>
>--Matthew
Thanks for the answer.  I thought of that.  I thought there might be a way
to capture the URL and then create a HREF for it.

Brian




------------------------------

Date: 24 Nov 1998 00:02:15 GMT
From: Aidan Rogers <aidan@salvador.blackstar.co.uk>
Subject: Roman Numerals Problem (Pattern Match)
Message-Id: <73ct27$gv4$1@nclient3-gui.server.ntli.net>

Hello there,

I've been trying to solve this nasty pattern matching type problem that I've 
been having. It's not really that I can't get the correct pattern match 
(I can), but more that I can't think of an efficient way to do it. Here's the 
problem.

I have to make people's names look properly capitalised (I receive them all in
upper case). So I do the following subroutine on them :-

sub tidy{$_=" ".lc shift()." ";tr/ \n\r\t/ /s;s/\b(\w)/\u$1/g;substr($_,1,-1);}

This also gets rid of any unnecessary spaces. However, it does cause a problem
for people with Roman Numerals in their names eg:

GEORGE HAMILTON IV comes out George Hamilton Iv
LOUDON WAINWRIGHT III comes out Loudon Wainwright Iii

both of which look completely daft. I was wondering does anyone know of any
way to catch this problem (is there a Roman Numeral module on CPAN that
I can't find?) or do I have to hard code a check for Roman Numeral words each
time I do this subroutine?

Thanks in advance,

Aidan


------------------------------

Date: Tue, 24 Nov 1998 01:45:58 GMT
From: mgjv@comdyn.com.au (Martien Verbruggen)
Subject: Re: Roman Numerals Problem (Pattern Match)
Message-Id: <qdo62.71$Jo2.233@nsw.nnrp.telstra.net>

In article <73ct27$gv4$1@nclient3-gui.server.ntli.net>,
	Aidan Rogers <aidan@salvador.blackstar.co.uk> writes:

> I have to make people's names look properly capitalised (I receive them all in
> upper case). So I do the following subroutine on them :-

There have been many threads on this in the past on this newsgroup.
You can most likely still find them archived at www.dejanews.com. It
will very likely be very enlightening for you to have a look at them,
and see all the proposed problems that most approaches to this will
generate.

> sub tidy{$_=" ".lc shift()." ";tr/ \n\r\t/ /s;s/\b(\w)/\u$1/g;substr($_,1,-1);}

btw.. Did you know that perl comes with a built in function called
'ucfirst'? It may be easier to use that.

# perldoc -f ucfirst

> However, it does cause a problem for people with Roman Numerals in
> their names eg:

Ah. You've found one of the possible problems. A possibility would be
to check if a word can be a roman numeral, by a simple regexp,
possibly followed by a stricter check. Of course, that won't be
enough, since there may be people out there with the last name 'Ix',
or something like that.

There simply is no way to get 'proper capitalisation' for names. Some
people don't even _want_ capitals in their names. Some people have
Capitals in the middle of their names.

Martien
-- 
Martien Verbruggen                  | 
Webmaster www.tradingpost.com.au    | I'm desperately trying to figure out
Commercial Dynamics Pty. Ltd.       | why kamikaze pilots wore helmets - Dave
NSW, Australia                      | Edison 


------------------------------

Date: Mon, 23 Nov 1998 18:10:43 -0800
From: lr@hpl.hp.com (Larry Rosler)
Subject: Re: Roman Numerals Problem (Pattern Match)
Message-Id: <MPG.10c3b57af232952698988b@nntp.hpl.hp.com>

[Posted to comp.lang.perl.misc and a copy mailed.]

In article <73ct27$gv4$1@nclient3-gui.server.ntli.net> on 24 Nov 1998 
00:02:15 GMT, Aidan Rogers <aidan@salvador.blackstar.co.uk> says...
 ...
> I have to make people's names look properly capitalised (I receive them all in
> upper case). So I do the following subroutine on them :-
> 
> sub tidy{$_=" ".lc shift()." ";tr/ \n\r\t/ /s;s/\b(\w)/\u$1/g;substr($_,1,-1);}

This works, but putting in leading and trailing spaces, and then 
deleting them, is totally unnecessary.  One might shorten the whole 
thing thus:

  sub tidy { local $_= shift; tr/\s/ /s; s/(\w+)/\u\L$1/g; $_ }
 
> This also gets rid of any unnecessary spaces. However, it does cause a problem
> for people with Roman Numerals in their names eg:
> 
> GEORGE HAMILTON IV comes out George Hamilton Iv
> LOUDON WAINWRIGHT III comes out Loudon Wainwright Iii
> 
> both of which look completely daft. I was wondering does anyone know of any
> way to catch this problem (is there a Roman Numeral module on CPAN that
> I can't find?) or do I have to hard code a check for Roman Numeral words each
> time I do this subroutine?

There was such a module, but the new index doesn't come up with it.  I 
don't know if it would help.  You might just throw the last name at it 
and see if it Why not just add the following in 'tidy':

s/\b(i+v?|vi+)$/\U$1/i;

That will carry you as far as 'Henry VIII'.  Change 'v' to [vx]' and you 
will get to 'Louis XIII'.  Further 'improvements' to the reader. :-)

Now how about solving the problems of 'Ronald MacDonald', 'Ludwig van 
Beethoven' or, my other favorite, 'Hernando deSoto'?  (There was a 
thread about this recently.)

-- 
(Just Another Larry) Rosler
Hewlett-Packard Laboratories
http://www.hpl.hp.com/personal/Larry_Rosler/
lr@hpl.hp.com


------------------------------

Date: Mon, 23 Nov 1998 13:03:37 +0100
From: Wolfgang Lux <lux@coo.mts.dec.com>
Subject: rounding with int
Message-Id: <36594F18.E41359F9@coo.mts.dec.com>

executing
    print 2.78 * 10000,"\n";
    print int(2.78 * 10000),"\n";
results on my system in:
    27800
    27799

Is there a way to use the int-function with the first result?

Wolfgang Lux



------------------------------

Date: 24 Nov 1998 16:12:02 +0100
From: Tony Curtis <Tony.Curtis+usenet@vcpc.univie.ac.at>
Subject: Re: rounding with int
Message-Id: <83emqt9lbx.fsf@vcpc.univie.ac.at>

Re: rounding with int, Wolfgang <lux@coo.mts.dec.com> said:

Wolfgang> executing print 2.78 * 10000,"\n"; print int(2.78
Wolfgang> * 10000),"\n"; results on my system in: 27800
Wolfgang> 27799

Wolfgang> Is there a way to use the int-function with the
Wolfgang> first result?

`int' rounds down, it sounds like you want to round up.

    perldoc POSIX -> `ceil', `floor'.

hth
tony
-- 
Tony Curtis, Systems Manager, VCPC,    | Tel +43 1 310 93 96 - 12; Fax - 13
Liechtensteinstrasse 22, A-1090 Wien,  | <URI:http://www.vcpc.univie.ac.at/>
"You see? You see? Your stupid minds!  | private email:
    Stupid! Stupid!" ~ Eros, Plan9 fOS.| <URI:mailto:tony_curtis32@hotmail.com>


------------------------------

Date: Tue, 24 Nov 1998 12:37:39 -0600
From: tadmc@flash.net (Tad McClellan)
Subject: Re: rounding with int
Message-Id: <jdue37.78k.ln@flash.net>

Wolfgang Lux (lux@coo.mts.dec.com) wrote:
: executing
:     print 2.78 * 10000,"\n";
:     print int(2.78 * 10000),"\n";


   Maybe trying this will provide some enlightenment:

      printf "%30.15f\n", 2.78 * 10000;


: results on my system in:
:     27800
:     27799

: Is there a way to use the int-function with the first result?


   The description for int() in the perlfunc man page discusses
   the problem that you are having.

   Are the suggestions given there inadequate for your purposes?


----------------------
=item int EXPR

=item int

Returns the integer portion of EXPR.  If EXPR is omitted, uses C<$_>.
You should not use this for rounding, because it truncates
towards C<0>, and because machine representations of floating point
numbers can sometimes produce counterintuitive results.  Usually C<sprintf()> or
 C<printf()>,
or the C<POSIX::floor> or C<POSIX::ceil> functions, would serve you better.
----------------------


   See also the Perl FAQ, part 4:

      "Why am I getting long decimals (eg, 19.9499999999999) 
       instead of the numbers I should be getting (eg, 19.95)?"


--
    Tad McClellan                          SGML Consulting
    tadmc@metronet.com                     Perl programming
    Fort Worth, Texas


------------------------------

Date: 23 Nov 1998 23:55:59 -0000
From: Jonathan Stowe <gellyfish@btinternet.com>
Subject: Re: Self Replicating Sites?
Message-Id: <73csmf$k8$1@gellyfish.btinternet.com>

On Mon, 23 Nov 1998 02:12:09 -0600 John T. Jarrett <jjarrett@ecpi.com> wrote:
> Has anyone seen decent code for self-replicating sites? Not a huge
> <gulp> mlm thing...just for a couple dozen dealers.
> 

What like a kind of WWW Perl virus ?

/J\
-- 
Jonathan Stowe <jns@btinternet.com>
Some of your questions answered:
<URL:http://www.btinternet.com/~gellyfish/resources/wwwfaq.htm>


------------------------------

Date: Mon, 23 Nov 1998 23:52:16 -0600
From: "John T. Jarrett" <jjarrett@ecpi.com>
Subject: Re: Self Replicating Sites?
Message-Id: <365A498E.7252DD86@ecpi.com>

Ha! Thanks, I rather needed a laugh after the last couple...

A self-replicating site is where you use perl to create pages on the fly and fill
in dealer information on the page. This is particularly interesting to us with
online applications where one of our dealers can send a client to the site - but
with a variable (like a subdirectory) - so the online application automatically
fills in the dealer's info.

What would a Perl virus be anyway? Black Perl?

John Jarrett

Jonathan Stowe wrote:

> On Mon, 23 Nov 1998 02:12:09 -0600 John T. Jarrett <jjarrett@ecpi.com> wrote:
> > Has anyone seen decent code for self-replicating sites? Not a huge
> > <gulp> mlm thing...just for a couple dozen dealers.
> >
>
> What like a kind of WWW Perl virus ?
>
> /J\
> --
> Jonathan Stowe <jns@btinternet.com>
> Some of your questions answered:
> <URL:http://www.btinternet.com/~gellyfish/resources/wwwfaq.htm>



------------------------------

Date: Tue, 24 Nov 1998 09:26:13 +0100
From: Jean Baptiste de Vathaire <ipuf@wanadoo.fr>
Subject: Servers to test a perl CGI script ?
Message-Id: <365A6DA5.243F@wanadoo.fr>

Hello,

I am just begining to discover Perl and I wonder if there is any open 
server where I could test and debug the scripts that I develop, because 
I haven't a unix engine at the office.
Other question : is there a perl interpretor for windows 95 ? Where it 
is accessible ?

Thanks in advance,

Jean Baptiste de Vathaire, Imprimerie des PUF, Vendtme, FRANCE


------------------------------

Date: 24 Nov 1998 11:31:48 GMT
From: "Allan M. Due" <due@murray.fordham.edu>
Subject: Re: Servers to test a perl CGI script ?
Message-Id: <73e5f4$ed7$0@206.165.167.197>

Hi Jean,

Jean Baptiste de Vathaire wrote in message <365A6DA5.243F@wanadoo.fr>...
>Hello,
>
>I am just begining to discover Perl and I wonder if there is any open
>server where I could test and debug the scripts that I develop, because
>I haven't a unix engine at the office.
>Other question : is there a perl interpretor for windows 95 ? Where it
>is accessible ?


Apache for Windows information can be found at:
http://www.apache.org/docs/windows.html

Perl compiled for Windows can be downloaded at:
http://www.activestate.com/ActivePerl/

AmD




------------------------------

Date: Tue, 24 Nov 1998 19:41:37 +1000
From: andrew@ugh.net.au (Andrew)
Subject: shutdown on IO::Socket::INET object
Message-Id: <andrew-2411981941370001@10.0.0.2>

Hi,

When I run the following code:


use IO::Socket;

$sock = IO::Socket::INET->new(
                        Proto       => "tcp",
                        PeerAddr    => "127.0.0.1",
                        PeerPort    => 9999,
                        Timeout     => 5
                        );

if (! defined($sock)) {
    die("Not Connected");
}

$sock->shutdown(0);



My script dies with:

Can't locate auto/IO/Socket/INET/shutdown.al in @INC (@INC contains: /usr/local/
lib/perl5/5.00502/i386-freebsd /usr/local/lib/perl5/5.00502 /usr/local/lib/perl5
/site_perl/5.005/i386-freebsd /usr/local/lib/perl5/site_perl/5.005 .) at 7.pl li
ne 17

I am using perl version 5.005_02 under FreeBSD 2.2.7-STABLE.

The script is meant to open a TCP connection and then indicate to the
system that it will be receiving no more data over the connection. I get a
similar error under MacPerl 5.1.3r2.

Thanks,

Andrew


------------------------------

Date: Tue, 24 Nov 1998 09:36:41 +0100
From: Thomas Schachner <Thomas.Schachner@awd.at>
Subject: smbclient&perl
Message-Id: <365A7019.F5643861@awd.at>

Hi out there,
are there some package for smbclient available?
( I want to automate filetransfer from a linux box
to several NT station )
smbclient is capable to do the filetransfer in ftp manner.
For ftp there is a package as i know.

Thanx Thomas

Please drop me a mail if you found something.


------------------------------

Date: Tue, 24 Nov 1998 10:16:07 +0000
From: James Stewart <james_stewart@mentorg.com>
Subject: STDOUT STDERR problems on Win95
Message-Id: <365A8766.E49F4E09@mentorg.com>

Hi!

I am currently running perl 5.004 on windows 95 and currently when I use the open
command I don't seem to be able to get output from both STDOUT and STDERR
together.

I have tried using :
open CMDINPUT, "$cmd 2>&1|";

which works fine on unix but however on windows 95 this doesn't work. How do I go
about doing this?

Thanks
James Stewart

--
mailto:james_stewart@mentorg.com




------------------------------

Date: Tue, 24 Nov 1998 13:30:05 GMT
From: Rick Delaney <rick.delaney@shaw.wave.ca>
Subject: Re: STDOUT STDERR problems on Win95
Message-Id: <365AB68E.E737CADF@shaw.wave.ca>

James Stewart wrote:
> 
> Hi!
> 
> I am currently running perl 5.004 on windows 95 and currently when I 
> use the open command I don't seem to be able to get output from both 
> STDOUT and STDERR together.


>From perldoc -f open:

    open(STDERR, ">&STDOUT") || die "Can't dup stdout";


-- 
Rick Delaney
rick.delaney@shaw.wave.ca


------------------------------

Date: Tue, 24 Nov 1998 18:13:46 GMT
From: William Case <wcase@mediaone.net>
Subject: Still Having Problems with "Rename()"
Message-Id: <365AF6EB.DD95FDAF@mediaone.net>

Thanks for the help Matthew, but when I changed the rename() line to add the
'die' statment, the same problem happens, namely that nothing is renamed, and
it returns NO error.

Also, those print stmts that you suggested. What information am I looking
for? Both strings (with the [] and without) look exactly the same.

Any ideas anybody?

Thanks again,
Bill Case

Matthew Bafford wrote:

> [Followups set]
>
> In article <365ADEFB.73254B11@mediaone.net>, wcase@mediaone.net says...
> => Hello,
>
> [snip]
>
> => I have noticed that if I replace the "$tempvar1" with a string literal
> => ("123.gif" for example) the script will run fine. Have I declared the
> => variable incorrectly? Is there something I need to do to force the var
> => to be a string?
>
> You don't need to force it.
>
> => Any help would be greatly appreciated!
>
> If code isn't working, either use the debugger (perl -d file), or add
> some extra print statements.
>
> =>   my ($tempvar1, $read_len, $extension, $result);
> =>
> =>   $read_len=length($cgi_cfn{'upfile'});
> =>   $extension=substr($cgi_cfn{'upfile'},$read_len - 4, 3);
> =>
>
> print "\$cgi_data{'name'} eq [$cgi_data{'name'}]\n";
>
> =>   if ($extension eq 'jpg') {
> =>     $tempvar1=$cgi_data{'name'} . '.jpg'; }
> =>   else {
> =>     $tempvar1=$cgi_data{'name'} . '.gif'; }
> =>
>
> print "\$cgi_sfn{'upfile'} eq [$cgi_sfn{'upfile'}]\n";
>
> => $result=rename($cgi_sfn{'upfile'},$tempvar1);
>
> # try:
>
> rename($cgi_sfn{'upfile'}, $tempvar1) or die
>         "Unable to rename [$cgi_sfn{'upfile'}] to [$tempvar1].\n",
>         "Reason: $!\n";
>
> HTH!
>
> => William Case
>
> --Matthew
>
> --
> # clp is no longer a valid newsgroup.  For a much better chance of
> # getting your question or comments noticed, please move your
> # discussions to either comp.lang.perl.moderated, or comp.lang.perl.misc.





------------------------------

Date: Tue, 24 Nov 1998 05:12:56 GMT
From: abe@abe.com (Abe)
Subject: Stupid question:  Script never terminates?
Message-Id: <sfr62.1550$oa2.2059507@news3.atl>

I wrote a new script, and my server admin tells me it's been running for 
4 hours straight because it doesn't terminate correctly.  I know it's a 
stupid question, but what kind of things would cause the script to not 
terminate?


------------------------------

Date: Tue, 24 Nov 1998 00:16:17 -0500
From: Peter Smith <psmith01@mindspring.com>
Subject: Re: Stupid question:  Script never terminates?
Message-Id: <365A4121.E9E864A1@mindspring.com>

Abe wrote:
> 
> I wrote a new script, and my server admin tells me it's been running for
> 4 hours straight because it doesn't terminate correctly.  I know it's a
> stupid question, but what kind of things would cause the script to not
> terminate?

A fork() call or something that spawns a child process.  An infinite
loop in your code.  Ummmmm...if you're acting as some type of proxy,
like retrieving a URL, and not properly terminating your request with
2 newlines........

just a guess...

-- 
--Peter--
psmith01@mindspring.com


------------------------------

Date: 24 Nov 1998 05:24:17 GMT
From: Zenin <zenin@bawdycaste.org>
Subject: Re: Stupid question:  Script never terminates?
Message-Id: <911884769.470747@thrush.omix.com>

Abe <abe@abe.com> wrote:
: I wrote a new script, and my server admin tells me it's been running for 
: 4 hours straight because it doesn't terminate correctly.  I know it's a 
: stupid question, but what kind of things would cause the script to not 
: terminate?

	perl -e '1 while 1'

-- 
-Zenin (zenin@archive.rhps.org)           From The Blue Camel we learn:
BSD:  A psychoactive drug, popular in the 80s, probably developed at UC
Berkeley or thereabouts.  Similar in many ways to the prescription-only
medication called "System V", but infinitely more useful. (Or, at least,
more fun.)  The full chemical name is "Berkeley Standard Distribution".


------------------------------

Date: 23 Nov 1998 23:52:57 -0000
From: Jonathan Stowe <gellyfish@btinternet.com>
Subject: Re: Trouble installing Date::Manip module
Message-Id: <73csgp$k5$1@gellyfish.btinternet.com>

On Mon, 23 Nov 1998 16:18:07 +1100 Grant Ozolins <grant.ozolins@anu.edu.au> wrote:
> Hi Perl People,
> 
> I've been trying to install the Date::Manip module, but have had trouble
> in the make install.  
> 
> I ran:
> 
> Makefile.PL PREFIX=/authors/home/username/bin/perlmod 
> 
> but when I went to make install, I got:
> 
>> make install
> Skipping
> /authors/home/username/bin/perlmod/lib/site_perl/./Date/Manip.pm
> (unchanged)
> Skipping
> /authors/home/username/bin/perlmod/lib/site_perl/./Date/Manip.pod
> (unchanged)
> Skipping /authors/home/username/bin/perlmod/man/man3/./Date::Manip.3
> (unchanged)
> Writing
> /authors/home/username/bin/perlmod/lib/site_perl/sun4-solaris/auto/Date/Manip/.packlist
> /bin/sh:
> /authors/home/username/bin/perlmod/lib/sun4-solaris/5.00404/perllocal.pod:
> cannot create
> make: *** [doc_site_install] Error 1
>> 
> 
> Could any kind soul suggest why this is happening?
> 

You apparently dont have the correct permissions to wrote to the directory in
the last operation but it does appear from the previous lines that the
module has been installed correctly at some point.

/J\
-- 
Jonathan Stowe <jns@btinternet.com>
Some of your questions answered:
<URL:http://www.btinternet.com/~gellyfish/resources/wwwfaq.htm>


------------------------------

Date: Tue, 24 Nov 1998 12:05:10 +1100
From: Mick <bellears@deakin.edu.au>
Subject: URGENT...Help Required!
Message-Id: <365A0645.5B35DB9F@deakin.edu.au>

This is a multi-part message in MIME format.
--------------6F5505461F6CA4CCA1E35056
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

Hi,
    We have a file upload system presently in operation, which works
well. I need to modify it so it can upload 3 files per student, and
these files are specially named..i.e....so when a student uploads the
three files for submission, the program will only allow files of a
specific name (eg. project.exe, project.txt and sample.data). Currently
the system only allows for each student to upload one file, and if they
try to upload another, it over writes there previous submission. Please
help me with this!!!

File is attached.

Please sends response to e-mail as well as News-group.
Thanks in advance,
Mick



--------------6F5505461F6CA4CCA1E35056
Content-Type: application/x-perl; name="Choose~1.pl"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline; filename="Choose~1.pl"

#see Apache::Registry

use strict;

my $tag;
my $fname;

#just like test.pl, but using Apache->methods

my $r = Apache->request;

#$c = $r->connection;


%ENV = $r->cgi_env;

my $contentLength = $ENV{"CONTENT_LENGTH"};

(undef, my $contentBoundary )= split("boundary=",$ENV{"CONTENT_TYPE"});
my $remoteUser = $ENV{"REMOTE_USER"};
my $remoteGroup = $ENV{"REMOTE_GROUP"};
my $queryString = $ENV{"QUERY_STRING"};
my $authType = $ENV{"AUTH_TYPE"};
my $requestUri = $ENV{"REQUEST_URI"};
my $requestMethod = $ENV{"REQUEST_METHOD"};

my $buf;
$r->read($buf, $r->header_in('Content-Length') );
MimeParse->parse( $buf, $contentBoundary );

$r->content_type("text/html");
$r->send_http_header();
print "<BODY TEXT=\"#000000\" BGCOLOR=\"#FFFFFF\" LINK=\"#0000FF\" VLINK=\"#000080\" ALINK=\"#FF0000\">";

#print "<PRE>\n";
#print map { "$_ = $ENV{$_}\n" } sort keys %ENV;
#print "</PRE>\n";

#
# Checkboxes - is checked before this procedure is invoked.
#
print "<script language=\"JavaScript\">\n";
print "\n<!--\n";
print " function confirm_delete(ths,file) {\n";
print "    var query = \"Confirm that you wish to delete '\" + file + \"' from your submission?\\n(The file will not be deleted until UPDATE is pressed)\";\n";
print "    if ( ths.checked ) \n";
print "        {\n";
print "        ths.checked = !ths.checked;\n";
print "        ths.checked = window.confirm(query)\n";
print "        }\n";
print "    }\n";
print "// -->\n";
print "</script>\n";
my $cmct_directory;
my $cmct_relative;
my $cmct_group;
my $cmct_mode;
my $cmct_p_id;
my $cmct_type;

if ( !( $cmct_relative = $ENV{"CMCT_RELATIVE"}) )
	{
	$cmct_relative = $ENV{"REDIRECT_CMCT_RELATIVE"};
	}
if ( !( $cmct_directory = $ENV{"CMCT_DIRECTORY"}) )
	{
	$cmct_directory = $ENV{"REDIRECT_CMCT_DIRECTORY"};
	}
if ( !( $cmct_group = $ENV{"CMCT_GROUP"} ))
	{
	$cmct_group = $ENV{"REDIRECT_CMCT_GROUP"};
	}
if ( !( $cmct_mode = $ENV{"CMCT_MODE"} ))
	{
	$cmct_mode = $ENV{"REDIRECT_CMCT_MODE"};
	}
if ( !( $cmct_p_id = $ENV{"CMCT_P_ID"} ))
	{
	$cmct_p_id = $ENV{"REDIRECT_CMCT_P_ID"};
	}
if ( !( $cmct_type = $ENV{"CMCT_TYPE"} ))
	{
	$cmct_type = $ENV{"REDIRECT_CMCT_TYPE"};
	}

if (!($remoteGroup = $ENV{"REMOTE_GROUP"} ))
	{
	$remoteGroup = $ENV{"REDIRECT_REMOTE_GROUP"};
	}

if ( $remoteGroup eq "" )
	{
	print "Can Not Determine Group - Server Failure\n";
	}

my $dbh = DBI->connect( "dbi:Pg:dbname=cmct","cmct","" ) or die "Error: $DBI::errstr\n";

my $cursor = $dbh->prepare( "SELECT * FROM unit WHERE c_code = '$remoteGroup'" );
$cursor->execute;

(my $ccode,my $cdesc,my $url) = $cursor->fetchrow;

print "<TITLE>$ccode - $cdesc</TITLE>\n";
print "<CENTER>\n";
print "<TABLE WIDTH=\"80%\">\n";
print "<TR BGCOLOR=\"#c0c0c0\">\n";
print "<TD WIDTH=\"20%\"><DIV ALIGN=center><B><TT><FONT SIZE=+2>$ccode - $cdesc</FONT></TT></B></DIV></TD>\n";
print "</TR></TABLE>\n";
print "<tt>",scalar localtime,"</tt><br>\n";

#print "<P><PRE>";

$cursor->finish;

print "<P><I>If you need help then click <A HREF=\"help.shtml\">here</A>.</I>";
print "<HR>\n";
print "</CENTER>\n";

#
# Get default assignment and list of assignments ...
#
my $sql = "SELECT c_default_assignment FROM unit WHERE c_code = '$cmct_group'";
my $cursor = $dbh->prepare( $sql );
$cursor->execute;
(my $def_ass) = $cursor->fetchrow;
$cursor->finish;

#
# Get list of assignments ...
#
my $sql = "SELECT a_id FROM assignment WHERE a_ccode = '$cmct_group' ORDER BY a_id";
my $cursor = $dbh->prepare( $sql );
$cursor->execute;
my @assignments;
while ( ( my $a_id ) = $cursor->fetchrow )
	{
	$assignments[@assignments] = $a_id;
	}
$cursor->finish;


#
# Is the selected assignment bad?
#
#my $selected_assignment = %ENV{"CHOSENASSIGNMENT"};
my $selected_assignment = MimeParse->get("CHOSENASSIGNMENT");

if ( $selected_assignment <= 0 )
	{ $selected_assignment = 3; }

if ( $selected_assignment < 1 )
	{
	print "<CENTER>";
	print "<h2><B>Error</B></h2><P>";

	print "Assignment number is invalid. Click <a href=\"\">here</A> ";
	print "to restart the submission process.</A><P>";
	goto THEEND;
	}

my $lcgroup = lc $cmct_group;
my $dname = "/home/$lcgroup/Submissions/$selected_assignment/$cmct_p_id";
print "group is $lcgroup\n";
print "selected Ass is $selected_assignment\n";
print "pid is $cmct_p_id\n";
#
# Stage 1. Dig out the list of compatible unit codes.
#          (ie: Markers are likely to have SCC617 and SCC372 assignments
#               in the one uploaded bundle. )
#         
my $sql = "SELECT cc_code2 FROM compatible_units WHERE cc_code1 = '$cmct_group'";
my $cursor1 = $dbh->prepare($sql);
$cursor1->execute;
my $ccodes = "pcl_ccode = '$cmct_group'";
my $ccode;
while ( ($ccode) = $cursor1->fetchrow )
        {
        #print "$ccode is similar\n";
        $ccodes .= " OR pcl_ccode = '$ccode'";
        }
$cursor1->finish;


my @d_parts = split ( "/",$dname );

my $d_build = "";
	
shift @d_parts;
	
while ( @d_parts )
        {
        $d_build .= "/" . shift @d_parts;
	
	# If directory exists then leave alone ...
        if ( -d $d_build )
                {
	
                next;
                }

        mkdir $d_build,770;
	
        #chgrp $lcgroup,$d_build;
        chmod 0770,$d_build;
        }

if ( ! ( -d "$dname/.log" ) )
	{
	mkdir "$dname/.log" ,770;
        #chgrp $lcgroup,"$dname/.log";
        chmod 0770,"$dname/.log";
	}

open ( DBG , ">/tmp/cmct/$cmct_p_id.txt" );
print DBG map { "$_ = $ENV{$_}\n" } sort keys %ENV;
print DBG "BUFFERCONTENTS ARE:\n";
printf DBG "%s", $buf;
close DBG;

my $thefilename = MimeParse->getfilename("bulkfilename");

$thefilename =~ s/.*?([^\\\/]*)$/$1/;

if ( length( $thefilename ) )
	{
	my $deposit = "$dname/$thefilename";

	if ( open( FILE , ">$deposit" ) ) 
		{
		printf FILE "%s",MimeParse->get("bulkfilename");
		close( FILE );

		chmod 0660,$deposit;
		#chgrp $lcgroup,$deposit;

		open ( LOG , ">>$dname/.log/submit.log" );
		printf LOG "Submitted '%s' at %s\n", $thefilename, scalar localtime time;
		close ( LOG );
		chmod 0660,"$dname/.log/submit.log";
		#chgrp $lcgroup,"$dname/.log/submit.log"

		#
		# Now register the submission with the database.
		#
		my $sql = "SELECT pcl_ccode FROM person_unit_link WHERE pcl_pid = '$cmct_p_id' AND ( $ccodes )";
		#print "$sql<P>";
		my $cursor1 = $dbh->prepare($sql);
		$cursor1->execute;
		my $thecourse;
		if (!(($thecourse) = $cursor1->fetchrow))
			{
			$cursor1->finish;
			}
		else
			{
			$cursor1->finish;

			my $now = scalar localtime time;
			my $sql = "INSERT INTO person_unit_ass_link ( pa_pid, pa_ccode, pa_assid, pa_submitted, pa_accepted_by ) VALUES ( '$cmct_p_id','$thecourse',$selected_assignment,'$now','CMCT-WWW')";
			#print "$sql<P>";
			my $cursor1 = $dbh->prepare($sql);
			$cursor1->execute;

			$cursor1->finish;
			}
		}
	else
		{
		print "Error accessing storage directory: $!<P>";

		print STDERR "ERROR SAVING FILE: $deposit: $!\n";
		}
	}


print "<CENTER>";

print "<P>Submission for Assignment #$selected_assignment<P>";


print "<I>Your current submission contains:</I><P>";

print "<FORM METHOD=POST ACTION=\"choose-assignment.pl\" enctype=\"multipart/form-data\">";

print "<TABLE BORDER=2 CELLSPACING=3 CELLPADDING=3>";
print "<TR><TD ALIGN=CENTER>File Name</TD><TD ALIGN=CENTER>Size</TD><TD ALIGN=CENTER>Date</TD><TD>Delete?</TD></TR>";

if ( opendir ( DIRP , $dname ) )
	{
	my @files = grep !/^\./, readdir DIRP;
	closedir DIRP;

	my $f;
	my @remaining_files;

	if ( @files )	
		{
		foreach $f ( @files )
			{
			if ( MimeParse->get("DELETE-$f") )
				{
				unlink "$dname/$f";	

				open ( LOG , ">>$dname/.log/submit.log" );
				printf LOG "Deleted '%s' at %s\n", $f, scalar localtime time;
				close ( LOG );
				chmod 0660,"$dname/.log/submit.log";
				}
			else
				{
				unshift @remaining_files, $f;
				}
			}
		}

	if ( @remaining_files )	
		{
		foreach $f ( sort @remaining_files )
			{
			my @result = stat "$dname/$f";
			my $size = @result[7];
			my $date = scalar localtime @result[9];
			print "<TR>";

			my $f_meta = $f;
			$f_meta =~ s/ /%20/g;

			print "<TD><A HREF=\"/units/$cmct_group/CheckSubmission/$selected_assignment/$f_meta\">$f</A></TD>";
			print "<TD ALIGN=RIGHT>$size</TD>";
			print "<TD ALIGN=CENTER>$date</TD>";
			print "<TD ALIGN=CENTER><INPUT TYPE=CHECKBOX ONCLICK=\"confirm_delete(this,'$f')\" NAME=\"DELETE-$f\" VALUE=1></TD>";
			print "</TR>\n";
			}
		}
	else
		{
		print "<TR><TD ROWSPAN=2 COLSPAN=4><CENTER><I>No files</I></CENTER></TD></TR>";
		}
	}
else
	{
	print "<TR><TD ROWSPAN=2 COLSPAN=4><CENTER><I>No files</I></CENTER></TD></TR>";
	}
print "</TABLE>";

print "<P><HR><P>";
print "To add a file to your submission, choose it using the browse button below and";
print " then click 'UPDATE'<P>";
print "<INPUT TYPE=hidden NAME=CHOSENASSIGNMENT VALUE=$selected_assignment>";
print "<TABLE>";
print "<TR>";
print "<TD ALIGN=RIGHT>File Name:</TD>";
print "<TD>&nbsp;&nbsp;&nbsp;</TD>";
print "<TD><INPUT NAME=bulkfilename SIZE=25 MAXLENGTH=100 TYPE=file ACCEPT=\"*\"></TD>";
print "</TR>";

print "</TABLE>\n";
print "</CENTER><P><HR>\n";

print "<P><Center>Click ";
print "<INPUT TYPE=SUBMIT VALUE=UPDATE> ";
print "to upload a new file or delete an existing file.</CENTER></FORM>";


print "</CENTER>";

THEEND:

print "<HR>\n";
print "<A HREF=\"..\">Back</A>\n";
print "</BODY>\n";
print "</HTML>\n";

$dbh->disconnect;

# END OF FILE

--------------6F5505461F6CA4CCA1E35056--



------------------------------

Date: Tue, 24 Nov 1998 03:12:10 +0100
From: "Alan J. Flavell" <flavell@mail.cern.ch>
Subject: Re: URGENT...Help Required!
Message-Id: <Pine.HPP.3.95a.981124030758.17544D-100000@hpplus01.cern.ch>

On Tue, 24 Nov 1998, Mick caused the following to appear:

> Subject: URGENT...Help Required!
Parts/attachments:
   1 Shown    17 lines  Text
   2         9.6 KB     Application
----------------------------------------

You're not safe to be let loose on usenet.

In the good old days, we'd have advised you to read the new user FAQs on
news.announce.newusers.  Nowadays, there's so much of this stuff getting
posted that the people who could really help you are mostly just
ignoring it.  Some even set their news readers so that they never even
see it. 




------------------------------

Date: Tue, 24 Nov 1998 22:15:22 +1100
From: Mick <bellears@deakin.edu.au>
Subject: Re: URGENT...Help Required!
Message-Id: <365A954A.12BE0158@deakin.edu.au>

Let me be more specific then. As I am not that familiar with Perl, would
someone be kind enough to explain what the steps the program is going
through?
A few comments through the code would be more than helpful!

Thanks in advance,
Mick

Alan J. Flavell wrote:

> On Tue, 24 Nov 1998, Mick caused the following to appear:
>
> > Subject: URGENT...Help Required!
> Parts/attachments:
>    1 Shown    17 lines  Text
>    2         9.6 KB     Application
> ----------------------------------------
>
> You're not safe to be let loose on usenet.
>
> In the good old days, we'd have advised you to read the new user FAQs on
> news.announce.newusers.  Nowadays, there's so much of this stuff getting
> posted that the people who could really help you are mostly just
> ignoring it.  Some even set their news readers so that they never even
> see it.





------------------------------

Date: 24 Nov 1998 13:36:43 GMT
From: richm@ucesucks.mulveyr.roc.servtech.com (Rich)
Subject: Re: URGENT...Help Required!
Message-Id: <slrn75lden.6nq.richm@ll.aa2ys.ampr.org>

On Tue, 24 Nov 1998 12:05:10 +1100, Mick <bellears@deakin.edu.au> wrote:
( Deleted )

It's a good thing that I've set up my newsreader to filter out postings 
in discussion groups that are over 300 lines, and also those that 
ask other people to do their work for them.  Otherwise, it might
become annoying.

- Rich

( Is it *still* September? )

--
Rich Mulvey                                         
My return address is my last name, 
   followed by my first initial, @mulveyr.roc.servtech.com        
http://mulveyr.roc.servtech.com
Amateur Radio: aa2ys@wb2wxq.#wny.ny.usa


------------------------------

Date: 24 Nov 1998 13:33:19 GMT
From: richm@ucesucks.mulveyr.roc.servtech.com (Rich)
Subject: Re: URGENT...Help Required!
Message-Id: <slrn75ldan.6nq.richm@ll.aa2ys.ampr.org>

On Tue, 24 Nov 1998 12:05:10 +1100, Mick <bellears@deakin.edu.au> wrote:
( Deleted )

It's a good thing that I've set up my newsreader to filter out postings 
in discussion groups that are over 300 lines, and also those that 
ask other people to do their work for them.  Otherwise, it might
become annoying.

- Rich

( Is it *still* September? )

--
Rich Mulvey                                         
My return address is my last name, 
   followed by my first initial, @mulveyr.roc.servtech.com        
http://mulveyr.roc.servtech.com
Amateur Radio: aa2ys@wb2wxq.#wny.ny.usa


------------------------------

Date: Tue, 24 Nov 1998 10:30:12 -0500
From: Anitha Prasad <anitha@bgs.com>
Subject: using environment variables from wiyhin the perl script
Message-Id: <365AD104.D1A5760B@bgs.com>

Hi All,

I wanted to know as to how to use an environment variable form within a
perl script. What I mean by that is say for example,
I set $ENV{'INFORMIXDIR'}=/usr/informix; and I want to use $INFORMIXDIR
while executing a system command
using system('$INFORMIXDIR/bin/onstat -F');

How do I use the value of $INFORMIXDIR which is set from within the
script to execute one of the system commands.
Any help is greatly appreciated.

Thanks,
Anitha




------------------------------

Date: Tue, 24 Nov 1998 12:52:04 -0600
From: tadmc@flash.net (Tad McClellan)
Subject: Re: using environment variables from wiyhin the perl script
Message-Id: <k8ve37.5ck.ln@flash.net>

Anitha Prasad (anitha@bgs.com) wrote:

: I wanted to know as to how to use an environment variable form within a
: perl script. What I mean by that is say for example,
: I set $ENV{'INFORMIXDIR'}=/usr/informix; and I want to use $INFORMIXDIR
                            ^^^^^^^^^^^^^
                            ^^^^^^^^^^^^^

   You should have quotes around that.

   /usr/i   that much is a pattern match. Not what you want.

   perl will get all confused when it tries to deal with an 'n'
   pattern match option...


: while executing a system command
: using system('$INFORMIXDIR/bin/onstat -F');

: How do I use the value of $INFORMIXDIR which is set from within the
: script to execute one of the system commands.
: Any help is greatly appreciated.


   Put the quotes in and it should work fine the way you have it.


[
   in future posts, please describe what happens when you try
   your code. You neglected to mention what you are seeing
   for this one...
]


--
    Tad McClellan                          SGML Consulting
    tadmc@metronet.com                     Perl programming
    Fort Worth, Texas


------------------------------

Date: Tue, 24 Nov 1998 14:37:55 +0100
From: "Jesper Bork" <jbo@dator.dk>
Subject: using sort filter with strict
Message-Id: <PBy62.138$zg4.807@news.get2net.dk>

Hi,
Anyone knows how to use the sort routine with a filter function when using
strict. In principle I have

use strict;

sub foo {
   my (@a, @b);
   @b = sort bar @a;
}

sub bar {
   return 0 if $a eq $b;
}

Which naturally fails to compile with the complaint that $a and $b are
undeclared globals. I have tried to declare both $a and $b at the module
level, to address them through the sort:: scope and the main:: scope, but
nothing seems to solve it.

TIA,
Jesper
jbo@dator.dk




------------------------------

Date: Tue, 24 Nov 1998 15:42:49 GMT
From: aml@world.std.com (Andrew M. Langmead)
Subject: Re: using sort filter with strict
Message-Id: <F2xnnD.Az8@world.std.com>

"Jesper Bork" <jbo@dator.dk> writes:

>sub bar {
>   return 0 if $a eq $b;
>}

Be careful, you don't specify what perl should return when $a > $b or
$a < $b. Without a explict return, perl returns the last value
evaluated. In this case, if $a ne $b, it skips the return 0, falls of
the edge of the subroutine and returns a boolean false value (the
result of $a eq $b when $a ne $b) So you return false every single
time, which some versions of sort find screwy enough to cause a
coredump. (Or a protection error or system error, depending on your
operating system. No matter what you call it, its pretty bad.) The
most current version of perl now uses its own sort(), which protects
against system level errors when sort functions go bad. (I can just
hear the TV announcer, "You won't believe it! Watch "When sort()
functions go bad", Tuesday at 4:00 on the next ... show")

>Which naturally fails to compile with the complaint that $a and $b are
>undeclared globals. I have tried to declare both $a and $b at the module
>level, to address them through the sort:: scope and the main:: scope, but
>nothing seems to solve it.

You seem to be using an older version of the perl interpreter. More
current ones automatically exempt $a and $b from strict pragmatic
diagnositics. Upgrading might be the best solution.

Whether or not you take that advice, one thing to keep in mind is that
sort fills the $a and $b package globals in the current package. The
sort subroutine should expect to find them there, not the package
where the subroutine is defined. For example, in this code:

#!/usr/bin/perl -w

use strict;

package sortpackage;

print map {"$_\n"} sort subpackage::sortsub 'a' .. 'z';

package subpackage;

sub sortsub {
  return $sortpackage::b cmp $sortpackage::a;
}



The sort() function, since it is in sortpackage, assigns
$sortpackage::a and $sortpackage::b. The comparison subroutine, even
though it is in subpackage, needs to use the $a and $b that sort() is
using.

-- 
Andrew Langmead


------------------------------

Date: Tue, 24 Nov 1998 11:59:21 -0600
From: tadmc@flash.net (Tad McClellan)
Subject: Re: using sort filter with strict
Message-Id: <p5se37.luj.ln@flash.net>

Jesper Bork (jbo@dator.dk) wrote:

: Anyone knows how to use the sort routine with a filter function when using
: strict. In principle I have

[snip code]

: Which naturally fails to compile with the complaint that $a and $b are
: undeclared globals. 


   It does not fail to compile for me.

   There is something you are not telling us...


--
    Tad McClellan                          SGML Consulting
    tadmc@metronet.com                     Perl programming
    Fort Worth, Texas


------------------------------

Date: Tue, 24 Nov 1998 11:10:35 -0600
From: Cara D Flinn <cflinn@ibsweb.net>
Subject: Re: Why doesn't something work?
Message-Id: <365AE88B.60751E7F@ibsweb.net>

It's amazing how it does exactly what you tell it to do!  I've been
struggling with a similar problem this morning and couldn't figure out how
to get my values into the hash.  Thanks for the help!!!!
cdf

Jonathan Feinberg wrote:

> alany@2021.com (Alan Young) writes:
>
> >       $totals_info{$1} = $2;
> > #---> Why doesn't %totals_info = ( $1 => $2 ) work?
>
> > If I try the code as indicated above I get *one* entry in totals_info.
>
> Well, of course: you're reinitializing the hash each time through the
> loop with the code that "doesn't work".  You're saying "set the hash
> %totals_info to the list ($1, $2)", which is quite different from
> saying "set $totals_info{$1} to $2".
>
> --
> Jonathan Feinberg   jdf@pobox.com   Sunny Brooklyn, NY
> http://pobox.com/~jdf





------------------------------

Date: 12 Jul 98 21:33:47 GMT (Last modified)
From: Perl-Request@ruby.oce.orst.edu (Perl-Users-Digest Admin) 
Subject: Special: Digest Administrivia (Last modified: 12 Mar 98)
Message-Id: <null>


Administrivia:

Special notice: in a few days, the new group comp.lang.perl.moderated
should be formed. I would rather not support two different groups, and I
know of no other plans to create a digested moderated group. This leaves
me with two options: 1) keep on with this group 2) change to the
moderated one.

If you have opinions on this, send them to
perl-users-request@ruby.oce.orst.edu. 


The Perl-Users Digest is a retransmission of the USENET newsgroup
comp.lang.perl.misc.  For subscription or unsubscription requests, send
the single line:

	subscribe perl-users
or:
	unsubscribe perl-users

to almanac@ruby.oce.orst.edu.  

To submit articles to comp.lang.perl.misc (and this Digest), send your
article to perl-users@ruby.oce.orst.edu.

To submit articles to comp.lang.perl.announce, send your article to
clpa@perl.com.

To request back copies (available for a week or so), send your request
to almanac@ruby.oce.orst.edu with the command "send perl-users x.y",
where x is the volume number and y is the issue number.

The Meta-FAQ, an article containing information about the FAQ, is
available by requesting "send perl-users meta-faq". The real FAQ, as it
appeared last in the newsgroup, can be retrieved with the request "send
perl-users FAQ". Due to their sizes, neither the Meta-FAQ nor the FAQ
are included in the digest.

The "mini-FAQ", which is an updated version of the Meta-FAQ, is
available by requesting "send perl-users mini-faq". It appears twice
weekly in the group, but is not distributed in the digest.

For other requests pertaining to the digest, send mail to
perl-users-request@ruby.oce.orst.edu. Do not waste your time or mine
sending perl questions to the -request address, I don't have time to
answer them even if I did know the answer.


------------------------------
End of Perl-Users Digest V8 Issue 4287
**************************************

home help back first fref pref prev next nref lref last post