Re: Undeclared variables
This WebDNA talk-list message is from 2004
It keeps the original formatting.
numero = 57486
interpreted = N
texte = But then you have insecure variables :(On Apr 23, 2004, at 9:23 PM, Kenneth Grome wrote:>> Is there a more elegant way to do this:>>>> [showif [variable]=[raw][variable][/raw]]variable=some default >> value[/showif]>>>> Seems like using [raw] is a pretty kludgey way of determining if a >> variable is undefined. I've been doing this forever, and maybe in ver >> 6 there's a better way now?>>> There is a better way (in my opinion) and it's been around for ages, > you do not need v6, but it DOES require that you declare all the vars > you might be checking for at the TOP of the page like this:>> [text secure=f]var1=[/text]> [text secure=f]var2=[/text]> [text secure=f]var3=[/text]>> ... or like this:>> [text secure=f&multi=T]var1=&var2=&var3=[/text]>> This pre-sets them all to insecure variables with blank values. Then > you can just put the [var1] tag on the page and it will resolve to > blank or else it will resolve to whatever value it gets reset to AFTER > you preset it to blank at the top of the page.>> In other words, if the value is reset by an incoming formvariable or > by some webdna code in the page itself, it will resolve to that new > value. But if the value is not reset it will remain blank, which > means it is easy to check using showif's WITHOUT messing with raw or > url contexts.>> If you still need to check it first to see if it's blank before using > it, this is the easy-coding way to do it without raw or url:>> [showif =[var1]]the value is blank[/showif]>> [showif ![var1]]the value is not blank[/showif]>> This works because the comparison value on the left side of the > operator is blank, and the next char is the comparison operator, so > everything that follows is either blank or not. And since webdna has > already identified the comparison operator before it gets to the var1 > tag, you do not have to URL it like you would if you did it like this > instead:>> [showif [url][var1][/url]=]the value is blank[/showif]>> If you take advantage of this feature, you can write code faster that > still works as expected without introducing any problems. I have been > pre-setting my vars like this for years and it just works ...>> -- >> Kenneth Grome> WebDNA Programmer> Outsource Service Provider> Phone: +6332 255-6591>> -------------------------------------------------------------> This message is sent to you because you are subscribed to> the mailing list
.> To unsubscribe, E-mail to: > To switch to the DIGEST mode, E-mail to > > Web Archive of this list is at: http://webdna.smithmicro.com/>-------------------------------------------------------------This message is sent to you because you are subscribed to the mailing list .To unsubscribe, E-mail to: To switch to the DIGEST mode, E-mail to Web Archive of this list is at: http://webdna.smithmicro.com/
Associated Messages, from the most recent to the oldest:
But then you have insecure variables :(On Apr 23, 2004, at 9:23 PM, Kenneth Grome wrote:>> Is there a more elegant way to do this:>>>> [showif [variable]=[raw][variable][/raw]]variable=some default >> value[/showif]>>>> Seems like using [raw] is a pretty kludgey way of determining if a >> variable is undefined. I've been doing this forever, and maybe in ver >> 6 there's a better way now?>>> There is a better way (in my opinion) and it's been around for ages, > you do not need v6, but it DOES require that you declare all the vars > you might be checking for at the TOP of the page like this:>> [text secure=f]var1=[/text]> [text secure=f]var2=[/text]> [text secure=f]var3=[/text]>> ... or like this:>> [text secure=f&multi=T]var1=&var2=&var3=[/text]>> This pre-sets them all to insecure variables with blank values. Then > you can just put the [var1] tag on the page and it will resolve to > blank or else it will resolve to whatever value it gets reset to AFTER > you preset it to blank at the top of the page.>> In other words, if the value is reset by an incoming formvariable or > by some webdna code in the page itself, it will resolve to that new > value. But if the value is not reset it will remain blank, which > means it is easy to check using showif's WITHOUT messing with raw or > url contexts.>> If you still need to check it first to see if it's blank before using > it, this is the easy-coding way to do it without raw or url:>> [showif =[var1]]the value is blank[/showif]>> [showif ![var1]]the value is not blank[/showif]>> This works because the comparison value on the left side of the > operator is blank, and the next char is the comparison operator, so > everything that follows is either blank or not. And since webdna has > already identified the comparison operator before it gets to the var1 > tag, you do not have to URL it like you would if you did it like this > instead:>> [showif [url][var1][/url]=]the value is blank[/showif]>> If you take advantage of this feature, you can write code faster that > still works as expected without introducing any problems. I have been > pre-setting my vars like this for years and it just works ...>> -- >> Kenneth Grome> WebDNA Programmer> Outsource Service Provider> Phone: +6332 255-6591>> -------------------------------------------------------------> This message is sent to you because you are subscribed to> the mailing list .> To unsubscribe, E-mail to: > To switch to the DIGEST mode, E-mail to > > Web Archive of this list is at: http://webdna.smithmicro.com/>-------------------------------------------------------------This message is sent to you because you are subscribed to the mailing list .To unsubscribe, E-mail to: To switch to the DIGEST mode, E-mail to Web Archive of this list is at: http://webdna.smithmicro.com/
charles kline
DOWNLOAD WEBDNA NOW!
Top Articles:
Talk List
The WebDNA community talk-list is the best place to get some help: several hundred extremely proficient programmers with an excellent knowledge of WebDNA and an excellent spirit will deliver all the tips and tricks you can imagine...
Related Readings:
[replaceChars] would be nice ... (1997)
Security Tip (1996)
[date format] w/in sendmail (1997)
[WebDNA] Instructions for install on CentOS 5.7? (2011)
triggering an update of two frames (1998)
Problems passing [SKU] with $Replace in 2.0 (1997)
More questions about serial number dishing (1997)
[WebDNA] [BULK] which of these tags exist in 7.0 (2011)
Upgrading old WebCat Database Files (1997)
Physical Proximity searches (2000)
A little help on e-mail (HELP!!! :-) ) (1998)
Random Generator (2005)
Non-Cart Files in Shopping Cart Folder (1997)
Re:2nd WebCatalog2 Feature Request (1996)
off topic - dna snipets (1997)
The USArea® Network web site ... (1997)
ListFields and [name] (1997)
[SHOWIF] (1997)
Webcatalog quitting (1997)
Single Link browsing (1997)