RE: OO subclassing, wrong method being called in hierarchy.

2005-02-03 Thread Michael Kraus
, wrong method being called in hierarchy. Michael == Michael Kraus [EMAIL PROTECTED] writes: Michael The package names are actually section, dbh_section and checkout (rather Michael than A,B and C respectively). Lowercase names are also reserved for pragmas. You should choose names

OO subclassing, wrong method being called in hierarchy.

2005-02-02 Thread Michael Kraus
G'day... I've got three classes in a hierarchy, i.e.: Class A (Super class) | Class B (Subclasses A, Superclasses C) | Class C (Subclass) I have a method (called go) on both B and A. However, if it is called on A die is called as it is designed to be overridden in subclasses of A. When

RE: OO subclassing, wrong method being called in hierarchy.

2005-02-02 Thread Michael Kraus
If those are the actual package names your using, then you are probably picking up the B package in the core... No, they're not. (I didn't realise there was a B package already, though!) The package names are actually section, dbh_section and checkout (rather than A,B and C respectively).

Safety of storing pricing information in a CGI::Session

2005-01-31 Thread Michael Kraus
G'day all... I'm currently using CGI::Session as part of an online ordering system. I've been passing database primary keys back and forth between the client and server, with all values double checked upon being received at the server. The only problem is that I need to present the total price

RE: Subroutine redefined at ***.pm error

2005-01-31 Thread Michael Kraus
Hi Anish, It'd appear that you've written each of the functions ExpiryMessage, InstructorExpiryMessage and ReviewerExpiryMessage twice. Check that you've not duplicated your work and confused the parser. Regards, Michael S. E. Kraus B. Info. Tech. (CQU), Dip. Business (Computing) Software

RE: RegExp equivalencies

2005-01-26 Thread Michael Kraus
Wild Technology Pty Ltd , ABN 98 091 470 692 Sales - Ground [...] And that'll really make you popular around here ;-) Yes, I've noticed. Unfortunately if I leave off my .sig (as I did in the original message of this thread), the mail server decides to append an even longer signature to my

RE: RegExp equivalencies

2005-01-26 Thread Michael Kraus
To: 'beginners@perl.org' Cc: Michael Kraus Subject: RE: RegExp equivalencies Michael Kraus [EMAIL PROTECTED] asked: Is: my ($id) = $item =~ /_(\d+)$/; Equivalent to: $item =~ /_(\d+)$/; $id = $1; Yes. It's especially useful when you've got more than one capture in your

RegExp equivalencies

2005-01-24 Thread Michael Kraus
G'day... Is: my ($id) = $item =~ /_(\d+)$/; Equivalent to: $item =~ /_(\d+)$/; $id = $1; Thanks heaps... -Mike Wild Technology Pty Ltd , ABN 98 091 470 692 Sales - Ground Floor, 265/8 Lachlan Street, Waterloo

RE: Spam:Re: Reading the first line of a file

2005-01-17 Thread Michael Kraus
G'day... if ($_ !~ /\*{5} InTune/){ This should be: if ($_ !=~ /\*{5} InTune/) { Should it? I always thought that !~ was the inverse of =~ I.e. $var !~ /pattern/ was the equivalent of !($var =~ /pattern/) (at least within test conditions anyway) Is there something

RE: Triple Combo Box with Perl?

2005-01-16 Thread Michael Kraus
You don't. You create it with HTML and JavaScript. You use perl to read the select boxes values. It's simply that Perl is used server-side, not client-side. Perl can be used to generate the HTML (and javascript if needed). Javascript is a client-side technology. The two languages don't directly

RE: CGI::Session

2005-01-16 Thread Michael Kraus
G'day... I would like to use a session mechanism that allows to store some hashes in a MySQL database, but also allow storing some other visitor preferences like the font style, colors, font sizes, the language, etc. Do you know if CGI::Session allows storing some more values in a

Fedora core 3 breaks sendmail functionality???

2004-12-22 Thread Michael Kraus
G'day... I've recently upgraded to Fedora Core 3, and have found that now my Perl scripts which use the MIME::Lite module no longer work. According to the error log, the problem is their seems to be permission problems executing sendmail. (See below) [Thu Dec 23 10:07:52 2004] [error] [client

Using variables in REs

2004-12-16 Thread Michael Kraus
G'day... I've got a function which checks that only allowed characters are contained within a tainted piece of data, part of it looks like this: if ($tainted =~ /^([$allowed_chars]*)$/) { return $1; } Where $allowed_chars are the allowed characters.

RE: Useless use of numeric gt () in void context and Useless use of private variable in void context

2004-12-05 Thread Michael Kraus
Could you please clearly point out which is line 382. Just post line 382 and/or line 382 and the surrounding block. Regards, Michael S. E. Kraus Software Developer Wild Technology Pty Ltd ___ ABN 98 091 470 692 Level 4 Tiara, 306/9 Crystal Street, Waterloo NSW

RE: Spam:Re: File Upload Using CGI

2004-12-02 Thread Michael Kraus
G'day... $file_name = $upload-file_name('sequences'); $file_type = $uplaod-file_type('sequences'); $file_handle = $upload-file_handle('sequences'); I haven't checked your script that thoroughly, or compared it to how I have done it - /but/ I have noticed that you've misspelt upload as

RE: Spam:Re: using $! for die()ing with Package function

2004-12-02 Thread Michael Kraus
G'day... Return undef or 0, just like you are doing. Both your calls to baz have an argument, so 1 is returned both times. I prefer undef for false. Ahh... But how do you set $! in the enclosing scope? Thanks... Regards, Michael S. E. Kraus Software Developer Wild Technology Pty Ltd

RE: Spam:Re: CGI::Untaint [was: Running Perl ...]

2004-12-01 Thread Michael Kraus
G'day... Comments from others would be appreciated. Michael, what's your thinking behind using CGI::Untaint? OK... My thoughts are this - flamesuit on :)checking out the module before casting judgement on it is a good thing(tm)/flamesuit off :) The module leaves validation up to the end

Two classes sharing the same method

2004-12-01 Thread Michael Kraus
G'day all... I'm wanting two different classes to share the same error functionality. OK, rather than trying to talk aroud a lot of what I want to do I'll show you some code: ---SNIP--- package Error; sub new { my $class = shift; $class = ref $class || $class; my

RE: Spam:Two classes sharing the same method

2004-12-01 Thread Michael Kraus
Hrmmm... Provided my own work-around for this... Comments more than welcome... --- SNIP --- package Second_Object; use First_Object; # ... code ... sub addServerError { my $self = shift; my $desc = shift; if ( $desc !~ /^$self:/ ) { $desc =

Passing hashes as parameters to construct objects

2004-12-01 Thread Michael Kraus
G'day... I've noticed a lot of modules can be initialised in the form: my $instance = Module-new( option = value1, option2 = value2 ) How is this implemented? Is the above simply passing a hash reference? Is it something like: --- SNIP --- package Module; sub new { my $obclass =

RE: Passing hashes as parameters to construct objects

2004-12-01 Thread Michael Kraus
Big thanks to Larry and Edward for their help. Regards, Michael S. E. Kraus Software Developer Wild Technology Pty Ltd ___ ABN 98 091 470 692 Level 4 Tiara, 306/9 Crystal Street, Waterloo NSW 2017, Australia Telephone 1300-13-9453 | Facsimile 1300-88-9453

RE: Running Perl Scripts Via A Web Page

2004-11-30 Thread Michael Kraus
G'day... Can someone please recommend a book for me. I do some web administration w/ perl scripts. I would like to create a web page w/ drop down menus... and depending on the selection criteria, run that script. I searched on Google a little, but not really sure what I'm looking for.

RE: Spam:RE: Return values from methods on Classes/Objects

2004-11-29 Thread Michael Kraus
G'day! : Clearly, I'm missing something crucial here... :) And so are we. Like the code for the method for format_cost(), but I imagine that you are not shifting the object off at the beginning of that subroutine. Right you are... :) Btw... The code was: sub format_cost {

RE: Spam:Re: Error: Scalar found where operator expected

2004-11-29 Thread Michael Kraus
G'day... This is not related to strict. You always have to use () when calling methods. Really? /Always/ or only when passing arguments to the method? I've got a method that returns a reference to an object, I often call it without using parentheses. Let me show you what I mean... --- In

map vs foreach

2004-11-28 Thread Michael Kraus
G'day... Which is better to use, a for/foreach loop or map function when doing some basic comparisons and assignments? E.g. for my $datum (keys %{$rh_vars}) { $max_length = length($datum) if length($datum) $max_length; } OR map { $max_length = ($max_length length($_) ? $max_length :

RE: Spam:Re: Frowarding mail automatically through script

2004-11-28 Thread Michael Kraus
G'day... Better yet, use MIME::Lite E.g. sub mail() { my $from = '[EMAIL PROTECTED]'; use MIME::Lite; my $mail = MIME::Lite-new( From = $from, To = $recipient, Subject = From Guest Book $subject, Body =

RE: map vs foreach

2004-11-28 Thread Michael Kraus
Thanks heaps Jonathon and Paul for your help. :) Regards, Michael S. E. Kraus Software Developer Wild Technology Pty Ltd ___ ABN 98 091 470 692 Level 4 Tiara, 306/9 Crystal Street, Waterloo NSW 2017, Australia Telephone 1300-13-9453 | Facsimile 1300-88-9453

Blocks in Perl

2004-11-28 Thread Michael Kraus
G'day... I know when say reading a file handle or performing a database update that if the function fails you can use one of the or operators to execute an aleternate statement (either or per say or ||). What happens if you want to execute more than one statement? E.g. $sth-exectute(1, $str)

RE: Blocks in Perl

2004-11-28 Thread Michael Kraus
G'day... The clearest way is to use a gool 'ole fashioned conditional: unless ($sth-execute( 1, $str )) { ($obj-addError(DB write failed); return undef; } Ahh... boc! Thanks! :) $sth-execute(1, $str) || do { ($obj-addError(DB write failed); return undef; } No need for a

Return values from methods on Classes/Objects

2004-11-28 Thread Michael Kraus
G'day... One of my classes has a method called format_cost which takes a number (integer representing a monetory amount in cents) and pretties it up for display as a dollar amount. I.e. format_cost(12) returns $1,200.00. When I have the function stand-alone it behaves as it should, however

RE: Spam:Re: Search and substutiing text and adding in a carriage return?

2004-11-25 Thread Michael Kraus
G'day... s/ MATCH / MATCH NEW /; Which should output: MATCH NEW. The // don't work. I'm sure my syntax is wrong. s/ MATCH / MATCH ///NEW /; Output I require: MATCH NEW s/MATCH/MATCH\nNEW/g; Will replace all instances of MATCH with: MATCH NEW You may also wish to check out

RE: Spam:Re: Using regular expressions

2004-11-24 Thread Michael Kraus
John, Lighten up matey... The examples I've given are just that examples... Error checking functionality is up the end programmer... (And you are quite right, you should check the status of operations.) This is a beginers list, let's keep it friendly, eh? ... and FWIW ... for my $line

RE: Overridden methods

2004-11-24 Thread Michael Kraus
G'day... Firstly ***thanks*** to everyone who has been helping me with this Really appreciated... Now, for friendly arguments sake... I'm wanting to write a method in an abstract class that must be overriden by it's children. If it is called directly (i.e. without being overriden)

RE: Spam:RE: Spam:Re: Using regular expressions

2004-11-24 Thread Michael Kraus
- From: Michael Kraus [mailto:[EMAIL PROTECTED] Sent: Thursday, 25 November 2004 11:27 AM To: John W. Krahn; Perl Beginners Subject: Spam:RE: Spam:Re: Using regular expressions John, Lighten up matey... The examples I've given are just that examples... Error checking functionality is up

RE: sprintf query

2004-11-24 Thread Michael Kraus
G'day... Does anyone know how to format a string so that the spaces are padded on the right, not the left. Im using $dates = sprintf(%64s, $dates); this right justifies the data and pads the left with spaces. I need the other way around - left justified and padded with spaces on the

How do I create an empty anonymous hash with a hash declaration?

2004-11-23 Thread Michael Kraus
G'day all... I've got a hash: ---CUT--- our %Super_DB_Object = ( TableName = , DBFields = undef, NotNull = [], ); ---CUT--- ...and later (in a function) ... ---CUT--- my $field_hash = {}; $self-{DBFields} = $field_hash; ---CUT--- (Where the hash has been aliased to

RE: Spam:RE: Recursive function

2004-11-23 Thread Michael Kraus
G'day... These lines look wrong (but I may be wrong): $exit_status = `dir` ; print \nCurrently in - \n$exit_status\n==\nDepth ($depth)\n ; Shouldn't that be: $exit_status = `pwd`; Also, check out the glob function - it'll

RE: Spam:Re: How do I create an empty anonymous hash with a hash declaration?

2004-11-23 Thread Michael Kraus
and delete the message from your system. -Original Message- From: Gunnar Hjalmarsson [mailto:[EMAIL PROTECTED] Sent: Wednesday, 24 November 2004 1:20 PM To: [EMAIL PROTECTED] Subject: Spam:Re: How do I create an empty anonymous hash with a hash declaration? Michael Kraus wrote

RE: Spam:RE: Spam:Re: How do I create an empty anonymous hash with a hash declaration?

2004-11-23 Thread Michael Kraus
have received this email in error, please immediately advise the sender by return email and delete the message from your system. -Original Message- From: Michael Kraus [mailto:[EMAIL PROTECTED] Sent: Wednesday, 24 November 2004 1:45 PM To: Gunnar Hjalmarsson; [EMAIL PROTECTED] Subject

Overridden methods

2004-11-23 Thread Michael Kraus
G'day... If a sublass has overrides a method in a superclass, and the subclasses method calls the superclass's method, is there any mechanism to detect that the superclass' method has been overridden? I'm wanting to write a method in an abstract class that must be overriden by it's children. If

RE: Spam:Re: Autmatic function creation

2004-11-17 Thread Michael Kraus
G'day... : Should I be using my or our here for the variables - these : are the variables I want present in all my derived classes and : should be the same for all. I assume you're referring to things like %InheritableClassData... You should be using our variables; my variables won't

Autmatic function creation

2004-11-16 Thread Michael Kraus
Just wondering if this code snippet will behave as expected, and if not then why not? :) --START-- our %InheritableClassData = ( DBH = undef, Q = undef, Handler = undef, ); foreach (qq(DBH Q Handler)) { sub $_ { shift;

RE: Spam:RE: Autmatic function creation

2004-11-16 Thread Michael Kraus
function creation Michael Kraus [EMAIL PROTECTED] wrote: : Just wondering if this code snippet will behave as expected, : and if not then why not? :) No, I don't think so. One error is in using the qq() operator instead of the qw() operator. Even with that fix, perl throws syntax errors

RE: Spam:Re: Autmatic function creation

2004-11-16 Thread Michael Kraus
: Spam:Re: Autmatic function creation Michael Kraus wrote: Just wondering if this code snippet will behave as expected, and if not then why not? :) --START-- our %InheritableClassData = ( DBH = undef, Q = undef, Handler = undef, ); foreach (qq(DBH Q Handler)) { sub

Variables taken from browser stuck

2004-11-15 Thread Michael Kraus
G'day... I've got a perl script that reads in variables from a web page using CGI and CGI::Untaint. The only problem is that after changing a check box's value from being As_Above to on (in the HTML, for the purpose of compatibility with CGI::Untaint) it did not appear the browser was giving a