ok great.. I think i'm getting it. this must be the answer to the select case question I heard about years ago... While I get my brain to absorb this new stuff.. may I ask you to just tranlate just one item for me? # package name is LogIn.pl ( i was told to use .pl for packages, .pm for modules) # is in Game.cgi if ($Input{Action} eq "Log In") { $Pm{Status}=Login::LogIn("$Input{Name}","$Input{PW}"); exit; }
###### AH HA! I only need to put "1;" at the end on a package, not "return 1"; thanks.... Lou ----- Original Message ----- From: "Stewart Heckenberg" <[EMAIL PROTECTED]> To: "CGI Application" <cgiapp@lists.erlbaum.net> Sent: Wednesday, February 13, 2008 7:45 PM Subject: Re: [cgiapp] Program format (this is the way I write my code -help?) > cgiapp is object-oriented, but you don't have to worry about that too > much with what you're doing. The main thing to focus on is that > instead of testing whether $input{action} eq 'some_action', you > instead have a sub called 'some_action'. > > So your if/else blocks become subs, and instead the 'action' input > param being set to 'some_action' set the 'rm' cgi query param to > 'some_action' instead. All the rest of your code remains the same > apart from this. > > See http://search.cpan.org/~markstos/CGI-Application-4.06/lib/CGI/Application.pm > > Stew > > On 14/02/2008, Lou Hernsen <[EMAIL PROTECTED]> wrote: > > I sorta understand....and then not.. > > > > The last program I wrote was 10K+ line long where I used only subroutines > > all in one cgi.... > > I was told I was nuts for doing that... now I am rewritting everything over > > again... and using some > > new things I have learned about.... I will google some of the words you used > > .. and see what i get. > > > > Is what your talking about called "object oriented"? > > > > thanks for the help... > > still lost but looking :) > > Lou > > > > > > ----- Original Message ----- > > From: "Stewart Heckenberg" <[EMAIL PROTECTED]> > > To: "CGI Application" <cgiapp@lists.erlbaum.net> > > Sent: Wednesday, February 13, 2008 7:29 PM > > Subject: Re: [cgiapp] Program format (this is the way I write my > > code -help?) > > > > > > > Hi Lou, > > > > > > Actually you're close, but not close enough :) > > > > > > cgiapp actually allows you to get rid of all your if/else logic and > > > instead use what are called "run modes", which in terms of your games > > > are all the action/packets, e.g. instead of: > > > > > > if ($Input{Action} eq "Log In") > > > > > > you would use: > > > > > > sub login {... > > > > > > and to trigger that sub to run, you set a query parameter called "rm" > > > to be "login", e.g. foo.cgi?rm=login > > > > > > That's how cgiapp works -- instead of if/else blocks for your logic, > > > you use subs, and to execute a particular sub you merely set the rm > > > param to be the name of that runmode/sub. Have a look at the cgiapp > > > documentation for some examples. > > > > > > Hope this helps :) > > > > > > Kind regards, > > > Stew > > > > > > On 14/02/2008, Lou Hernsen <[EMAIL PROTECTED]> wrote: > > > > Hallo > > > > I am writing an online game. I have a main .cgi and am using packages > > which > > > > are "required" as needed. > > > > My .cgi is one long if-elsif-else all based on what action you make in > > the > > > > game. I do it this way so I can complete one packet at a time to do a > > > > certain thing. > > > > All files are read in the .cgi and vars passes to packages as > > needed..... am > > > > I even close in my method? > > > > > > > > >>>>>Mind you, this is a hobby to me.. all self taught....<<<<<<< > > > > > > > > ANY suggestion for books on program format would be helpfull.. thanks > > > > comments welcome.. try not to grind me into the dust, please LOL > > > > thanks > > > > Lou > > > > > > > > here is an example. > > > > > > > > if ($Input{Action} eq "Log In") > > > > { > > > > $Pm{Status}=Login::LogIn("$Input{Name}","$Input{PW}"); > > > > exit; > > > > } > > > > elsif ($Input{Action} eq "New Player") > > > > { > > > > Login::NewPlayer(); > > > > exit; > > > > } > > > > elsif ($Input{Action} eq "Create Player") > > > > { > > > > Login::CreatePlayer("$Input{Name}","$Input{PW},"$Input{Gender}"; > > > > exit; > > > > } > > > > elsif ($Input{Action} eq "EmailLogin") > > > > { > > > > $Pm{Status}=Login::EmailLogin("$Input{Name}","$Input{SN}"); > > > > exit; > > > > } > > > > > > > > > > > > ##### CGI::Application community mailing list ################ > > > > ## ## > > > > ## To unsubscribe, or change your message delivery options, ## > > > > ## visit: http://www.erlbaum.net/mailman/listinfo/cgiapp ## > > > > ## ## > > > > ## Web archive: http://www.erlbaum.net/pipermail/cgiapp/ ## > > > > ## Wiki: http://cgiapp.erlbaum.net/ ## > > > > ## ## > > > > ################################################################ > > > > > > > > > > > > > > ##### CGI::Application community mailing list ################ > > > ## ## > > > ## To unsubscribe, or change your message delivery options, ## > > > ## visit: http://www.erlbaum.net/mailman/listinfo/cgiapp ## > > > ## ## > > > ## Web archive: http://www.erlbaum.net/pipermail/cgiapp/ ## > > > ## Wiki: http://cgiapp.erlbaum.net/ ## > > > ## ## > > > ################################################################ > > > > > > > > > > > > -- > > > No virus found in this incoming message. > > > Checked by AVG Free Edition. > > > Version: 7.5.516 / Virus Database: 269.20.4/1275 - Release Date: 2/12/08 > > 3:20 PM > > > > > > > > > > > > ##### CGI::Application community mailing list ################ > > ## ## > > ## To unsubscribe, or change your message delivery options, ## > > ## visit: http://www.erlbaum.net/mailman/listinfo/cgiapp ## > > ## ## > > ## Web archive: http://www.erlbaum.net/pipermail/cgiapp/ ## > > ## Wiki: http://cgiapp.erlbaum.net/ ## > > ## ## > > ################################################################ > > > > > > ##### CGI::Application community mailing list ################ > ## ## > ## To unsubscribe, or change your message delivery options, ## > ## visit: http://www.erlbaum.net/mailman/listinfo/cgiapp ## > ## ## > ## Web archive: http://www.erlbaum.net/pipermail/cgiapp/ ## > ## Wiki: http://cgiapp.erlbaum.net/ ## > ## ## > ################################################################ > > > > -- > No virus found in this incoming message. > Checked by AVG Free Edition. > Version: 7.5.516 / Virus Database: 269.20.4/1275 - Release Date: 2/12/08 3:20 PM > > ##### CGI::Application community mailing list ################ ## ## ## To unsubscribe, or change your message delivery options, ## ## visit: http://www.erlbaum.net/mailman/listinfo/cgiapp ## ## ## ## Web archive: http://www.erlbaum.net/pipermail/cgiapp/ ## ## Wiki: http://cgiapp.erlbaum.net/ ## ## ## ################################################################