Just another Perl shrine | |
PerlMonks |
comment on |
( [id://3333]=superdoc: print w/replies, xml ) | Need Help?? |
I agree with your suggestion here. However, let me tell you a little about the genealogy of this bit of code, because there's another stage to come and I'd like a suggestion about how to complete this. For links I used to have something like this: a({href=>"/cgi-bin/musing.cgi?musing_id=$musing_id"}, $musing_heading)This worked fine for a long time. However, I would change occasionally the name of a script or move it to a different directory. For example, musing.cgi used to be called web_log.cgi. Then I'd have to go through my scripts and other places where script names were contained and change it. Last year I came up with the idea of entering the names of all of my scripts in a table in MySQL I named site_scripts. Now if I want to change the name of a script or location of a script, I change it in my site_scripts table in MySQL. I just use the same key name (e.g., musing) to retrieve it. This has worked well for me so far. Now what I want to do is to add the particular ID for the script. For instance, for a musing I generally have musing_id as the CGI variable name. For it, I'd like to change '?musing_id=' to something less hard-coded to something like this: a({href=>scripts->{'musing'}->{'script'} . '?' . script_ids->{'musing'}->{'id'} . '=' $musing_id}, $musing_heading)To tighten this up more, and to reduce the interpolation you mention, I could add the ? and the = to the hash containing the id label. Of course, once I have this problem worked out, I can have a sub-routine for my hyperlinks: hyperlink('musing',$musing_id,$musing_heading) That would be so much nicer, wouldn't it? It would be simple to set up another column in my site_scripts table in MySQL to hold the ID label. However, for some scripts I need more than one CGI variable: /cgi-bin/musing.cgi?musing_id=$musing_id&ref_id=$ref_id. That might also through off my hyperlink() idea. So, any suggestions on how I might organize multiple ID possibilities in MySQL or how to sort through them in Perl when deployed with a function? -Spenser In reply to Re^2: How's My Style Now?
by Spenser
|
|